Skip to content

Commit 5d3424a

Browse files
committed
join chapter 13
1 parent c7ad1b4 commit 5d3424a

37 files changed

+1101
-24
lines changed
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
package class1;
2+
3+
import java.io.File;
4+
import java.io.FileInputStream;
5+
import java.io.FileNotFoundException;
6+
import java.io.InputStream;
7+
import java.io.InputStreamReader;
8+
import java.util.Scanner;
9+
10+
11+
public class LinkedList<T> {
12+
public Node<T> first,newNode,last=null; //创建三个节点,头节点,新节点,尾节点
13+
public int count;
14+
class Node<T>{
15+
Node<T> link;
16+
int info;
17+
T key;
18+
}
19+
public Node<T> createLinked() throws FileNotFoundException{
20+
int num=0;
21+
String inputline;
22+
Class clazz=this.getClass();
23+
InputStream ins=clazz.getResourceAsStream("data.txt"); //通过外部数据创建链表
24+
Scanner scanner=new Scanner(ins); //流输入。
25+
// Scanner scanner=new Scanner(System.in); //Scanner录入从控制台数据,也可以从各种其它地方录入。比如InputStream in等。
26+
while(scanner.hasNextLine()){
27+
// inputline=scanner.toString();
28+
// num=Integer.parseInt(inputline);
29+
30+
String s=scanner.nextLine();
31+
Scanner oneLine=new Scanner(s);
32+
// if (oneLine==null)
33+
// break;
34+
while(oneLine.hasNext()){
35+
String s1=oneLine.next();
36+
num=Integer.parseInt(s1);
37+
if(num==999)
38+
break;
39+
newNode=new Node<T>();
40+
newNode.info=num;
41+
newNode.link=null;
42+
if(first ==null){
43+
first=newNode;
44+
last=newNode;
45+
}else{
46+
last.link=newNode;
47+
last=newNode;
48+
}
49+
}
50+
51+
}
52+
return first;
53+
54+
}
55+
public void insert(int i){ //插入链表数据,可以用这个方法来创建链表,也可以读入数据来创建。
56+
Node<T> newNode=new Node<T>();
57+
newNode.info=i;
58+
newNode.link=null;
59+
if(first==null){
60+
first=newNode;
61+
last=newNode;
62+
}else{
63+
last.link=newNode;
64+
last=newNode;
65+
}
66+
count++;
67+
}
68+
public void print(Node<T> node){ //给一个头节点,打印链表
69+
while(node!=null){
70+
System.out.println(node.info);
71+
node=node.link;
72+
}
73+
}
74+
public int getLength(Node<T> node){ //获取链表长度
75+
int length=0;
76+
while(node!=null){
77+
node=node.link;
78+
length++;
79+
}
80+
return length;
81+
}
82+
}

.metadata/.plugins/org.eclipse.core.resources/.history/52/407825c4669f00171fc5dda2158bf345

Whitespace-only changes.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
eclipse.preferences.version=1
2+
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3+
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
4+
org.eclipse.jdt.core.compiler.compliance=1.7
5+
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
6+
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
7+
org.eclipse.jdt.core.compiler.source=1.7
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
package class1;
2+
3+
import java.io.File;
4+
import java.io.FileInputStream;
5+
import java.io.FileNotFoundException;
6+
import java.io.InputStream;
7+
import java.io.InputStreamReader;
8+
import java.util.Scanner;
9+
10+
11+
public class LinkedList<T> {
12+
public Node<T> first,newNode,last=null; //创建三个节点,头节点,新节点,尾节点
13+
public int count;
14+
class Node<T>{
15+
Node<T> link;
16+
int info;
17+
}
18+
public Node<T> createLinked() throws FileNotFoundException{
19+
int num=0;
20+
String inputline;
21+
Class clazz=this.getClass();
22+
InputStream ins=clazz.getResourceAsStream("data.txt"); //通过外部数据创建链表
23+
Scanner scanner=new Scanner(ins); //流输入。
24+
// Scanner scanner=new Scanner(System.in); //Scanner录入从控制台数据,也可以从各种其它地方录入。比如InputStream in等。
25+
while(scanner.hasNextLine()){
26+
// inputline=scanner.toString();
27+
// num=Integer.parseInt(inputline);
28+
29+
String s=scanner.nextLine();
30+
Scanner oneLine=new Scanner(s);
31+
// if (oneLine==null)
32+
// break;
33+
while(oneLine.hasNext()){
34+
String s1=oneLine.next();
35+
num=Integer.parseInt(s1);
36+
if(num==999)
37+
break;
38+
newNode=new Node<T>();
39+
newNode.info=num;
40+
newNode.link=null;
41+
if(first ==null){
42+
first=newNode;
43+
last=newNode;
44+
}else{
45+
last.link=newNode;
46+
last=newNode;
47+
}
48+
}
49+
50+
}
51+
return first;
52+
53+
}
54+
public void insert(int i){ //插入链表数据,可以用这个方法来创建链表,也可以读入数据来创建。
55+
Node<T> newNode=new Node<T>();
56+
newNode.info=i;
57+
newNode.link=null;
58+
if(first==null){
59+
first=newNode;
60+
last=newNode;
61+
}else{
62+
last.link=newNode;
63+
last=newNode;
64+
}
65+
count++;
66+
}
67+
public void print(Node<T> node){ //给一个头节点,打印链表
68+
while(node!=null){
69+
System.out.println(node.info);
70+
node=node.link;
71+
}
72+
}
73+
public int getLength(Node<T> node){ //获取链表长度
74+
int length=0;
75+
while(node!=null){
76+
node=node.link;
77+
length++;
78+
}
79+
return length;
80+
}
81+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package rbtree;
2+
3+
public class RBTreeTest {
4+
5+
}
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
package class1;
2+
3+
import java.io.File;
4+
import java.io.FileInputStream;
5+
import java.io.FileNotFoundException;
6+
import java.io.InputStream;
7+
import java.io.InputStreamReader;
8+
import java.util.Scanner;
9+
10+
11+
public class LinkedList {
12+
public Node first,newNode,last=null; //创建三个节点,头节点,新节点,尾节点
13+
public int count;
14+
class Node{
15+
Node link;
16+
int info;
17+
}
18+
public Node createLinked() throws FileNotFoundException{
19+
int num=0;
20+
String inputline;
21+
Class clazz=this.getClass();
22+
InputStream ins=clazz.getResourceAsStream("data.txt"); //通过外部数据创建链表
23+
Scanner scanner=new Scanner(ins); //流输入。
24+
// Scanner scanner=new Scanner(System.in); //Scanner录入从控制台数据,也可以从各种其它地方录入。比如InputStream in等。
25+
while(scanner.hasNextLine()){
26+
// inputline=scanner.toString();
27+
// num=Integer.parseInt(inputline);
28+
29+
String s=scanner.nextLine();
30+
Scanner oneLine=new Scanner(s);
31+
// if (oneLine==null)
32+
// break;
33+
while(oneLine.hasNext()){
34+
String s1=oneLine.next();
35+
num=Integer.parseInt(s1);
36+
if(num==999)
37+
break;
38+
newNode=new Node();
39+
newNode.info=num;
40+
newNode.link=null;
41+
if(first ==null){
42+
first=newNode;
43+
last=newNode;
44+
}else{
45+
last.link=newNode;
46+
last=newNode;
47+
}
48+
}
49+
50+
}
51+
return first;
52+
53+
}
54+
public void insert(int i){ //插入链表数据,可以用这个方法来创建链表,也可以读入数据来创建。
55+
Node newNode=new Node();
56+
newNode.info=i;
57+
newNode.link=null;
58+
if(first==null){
59+
first=newNode;
60+
last=newNode;
61+
}else{
62+
last.link=newNode;
63+
last=newNode;
64+
}
65+
count++;
66+
}
67+
public void print(Node node){ //给一个头节点,打印链表
68+
while(node!=null){
69+
System.out.println(node.info);
70+
node=node.link;
71+
}
72+
}
73+
public static int getLength(Node node){ //获取链表长度
74+
int length=0;
75+
while(node!=null){
76+
node=node.link;
77+
length++;
78+
}
79+
return length;
80+
}
81+
}

.metadata/.plugins/org.eclipse.core.resources/.history/d2/b01bd088669f00171fc5dda2158bf345

Whitespace-only changes.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package rbtree;
2+
3+
public class RBTree {
4+
5+
}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package class1;
2+
3+
import java.io.FileNotFoundException;
4+
5+
import class1.LinkedList.Node;
6+
7+
public class TestClass {
8+
public static void main(String[] args) throws FileNotFoundException {
9+
LinkedList ll=new LinkedList();
10+
ll.insert(5); //插入链表数据
11+
ll.insert(9); //插入链表数据。
12+
ll.createLinked();
13+
14+
Node node=ll.first;
15+
int i=ll.getLength(node);
16+
System.out.println(i);
17+
18+
ll.print(node);
19+
}
20+
21+
22+
}

0 commit comments

Comments
 (0)