Java代码
- package 串;
- public class StringNode { // 节点类 结构
- public char data;
- public StringNode next;
- public StringNode(char c){
- data = c;
- next = null;
- }
- public StringNode(){
- this('?');
- }
- }
- public class String2 { //链式存储 实现了部分函数
- StringNode head,rear;
- int number=0;
- public String2(){
- head = rear = null;
- number = 0;
- }
- public String2(char c){
- head = new StringNode(c);
- number = 1;
- }
- public int length2(){
- return number;
- }
- public void concat2(char c){
- StringNode p,q;
- if(this.head ==null){
- head = new StringNode(c);
- this.rear = head;
- }else{
- q = new StringNode(c);
- this.rear.next = q;
- this.rear = q;
- }
- number++;
- }
- public void concat2(String2 str){
- StringNode q = str.head;
- while(q!=null){
- this.concat2(q.data);
- q = q.next;
- }
- }
- }