admin管理员组文章数量:1794759
链表
1,循环列表只是单向链表的最后节点地址指向第一个节点。
2,Node 类
public class Node {String name;Node next;public Node(){}public Node(String name){this.name = name;this.next = null;} }
3,链表类
public class CLink {int size;Node first;public CLink() {this.size = 0;}public boolean isEmpty() {return first == null;}public void addNode(String name) {if (first == null) {first = new Node(name);first.next = first;size++;} else {Node newNode = new Node(name);Node temp = first;while (temp.next != first) {temp = temp.next;}newNode.next = first;temp.next = newNode;size++;}}public void removeNode(String name) {if (first == null) {return;}// 删除链表头if (first.name.equals(name)) {Node temp = first;while (temp.next != first) {temp = temp.next;}first = first.next;temp.next = first;size--;return;}// 删除链表尾Node temp = first;Node p = null;while (temp.next != first) {p = temp;temp = temp.next;}if (temp.name.equals(name)) {p.next = first;size--;return;}// 删除链表中间Node tem = first;while (!tem.next.name.equals(name)) {tem = tem.next;}tem.next.next = tem.next;size--;}public void insertNode(String data, String name) {// 插入到指定位置之后Node temp = first;while (!temp.name.equals(data)) {temp = temp.next;}Node newNode = new Node(name);newNode.next = temp.next;temp.next = newNode;size++;}public void display() {Node temp = first;if(temp.next == first){System.out.println(temp.name+" ==>: "+temp.next.name);return;}while (temp.next != first) {System.out.println(temp.name+" ==>: "+temp.next.name);temp = temp.next;}System.out.println(temp.name+" ==>: "+temp.next.name);}public void insertFirst(String name) {// 插入到链表的第一个位置Node newNode = new Node(name);newNode.next = first;first = newNode;if(first.next == null){first.next = first;size++;return;}Node second = first.next;while (second.next != first.next) {second = second.next;}second.next = first;size++;} }
4,测试类
public class Ctest {public static void main(String[] args) {CLink clink = new CLink();clink.insertFirst("外县典吏");clink.addNode("翰林院待诏");clink.addNode("各部院九品笔贴式");clink.addNode("翰林院典簿");clink.addNode("太医院御医");clink.addNode("翰林院检讨");clink.addNode("翰林院修编");clink.addNode("翰林院修撰");clink.addNode("国子监司业");clink.addNode("鸿胪寺少卿");clink.addNode("光禄寺少卿");clink.addNode("翰林院侍读学士");clink.addNode("大理寺少卿");clink.addNode("光禄寺卿");clink.addNode("都察院左副都御史");clink.addNode("各省巡抚");clink.addNode("各省巡抚");clink.addNode("太子少傅");clink.addNode("少师");clink.addNode("太师");clink.display();System.out.println("================我是分界线================");clink.removeNode("太师");clink.display();System.out.println("================我是分界线================");clink.removeNode("外县典吏");clink.display();clink.insertNode("少师", "太师");clink.display();System.out.println(clink.size);} }
5,打印结果
外县典吏 ==>: 翰林院待诏 翰林院待诏 ==>: 各部院九品笔贴式 各部院九品笔贴式 ==>: 翰林院典簿 翰林院典簿 ==>: 太医院御医 太医院御医 ==>: 翰林院检讨 翰林院检讨 ==>: 翰林院修编 翰林院修编 ==>: 翰林院修撰 翰林院修撰 ==>: 国子监司业 国子监司业 ==>: 鸿胪寺少卿 鸿胪寺少卿 ==>: 光禄寺少卿 光禄寺少卿 ==>: 翰林院侍读学士 翰林院侍读学士 ==>: 大理寺少卿 大理寺少卿 ==>: 光禄寺卿 光禄寺卿 ==>: 都察院左副都御史 都察院左副都御史 ==>: 各省巡抚 各省巡抚 ==>: 各省巡抚 各省巡抚 ==>: 太子少傅 太子少傅 ==>: 少师 少师 ==>: 太师 太师 ==>: 外县典吏 ================我是分界线================ 外县典吏 ==>: 翰林院待诏 翰林院待诏 ==>: 各部院九品笔贴式 各部院九品笔贴式 ==>: 翰林院典簿 翰林院典簿 ==>: 太医院御医 太医院御医 ==>: 翰林院检讨 翰林院检讨 ==>: 翰林院修编 翰林院修编 ==>: 翰林院修撰 翰林院修撰 ==>: 国子监司业 国子监司业 ==>: 鸿胪寺少卿 鸿胪寺少卿 ==>: 光禄寺少卿 光禄寺少卿 ==>: 翰林院侍读学士 翰林院侍读学士 ==>: 大理寺少卿 大理寺少卿 ==>: 光禄寺卿 光禄寺卿 ==>: 都察院左副都御史 都察院左副都御史 ==>: 各省巡抚 各省巡抚 ==>: 各省巡抚 各省巡抚 ==>: 太子少傅 太子少傅 ==>: 少师 少师 ==>: 外县典吏 ================我是分界线================ 翰林院待诏 ==>: 各部院九品笔贴式 各部院九品笔贴式 ==>: 翰林院典簿 翰林院典簿 ==>: 太医院御医 太医院御医 ==>: 翰林院检讨 翰林院检讨 ==>: 翰林院修编 翰林院修编 ==>: 翰林院修撰 翰林院修撰 ==>: 国子监司业 国子监司业 ==>: 鸿胪寺少卿 鸿胪寺少卿 ==>: 光禄寺少卿 光禄寺少卿 ==>: 翰林院侍读学士 翰林院侍读学士 ==>: 大理寺少卿 大理寺少卿 ==>: 光禄寺卿 光禄寺卿 ==>: 都察院左副都御史 都察院左副都御史 ==>: 各省巡抚 各省巡抚 ==>: 各省巡抚 各省巡抚 ==>: 太子少傅 太子少傅 ==>: 少师 少师 ==>: 翰林院待诏 翰林院待诏 ==>: 各部院九品笔贴式 各部院九品笔贴式 ==>: 翰林院典簿 翰林院典簿 ==>: 太医院御医 太医院御医 ==>: 翰林院检讨 翰林院检讨 ==>: 翰林院修编 翰林院修编 ==>: 翰林院修撰 翰林院修撰 ==>: 国子监司业 国子监司业 ==>: 鸿胪寺少卿 鸿胪寺少卿 ==>: 光禄寺少卿 光禄寺少卿 ==>: 翰林院侍读学士 翰林院侍读学士 ==>: 大理寺少卿 大理寺少卿 ==>: 光禄寺卿 光禄寺卿 ==>: 都察院左副都御史 都察院左副都御史 ==>: 各省巡抚 各省巡抚 ==>: 各省巡抚 各省巡抚 ==>: 太子少傅 太子少傅 ==>: 少师 少师 ==>: 太师 太师 ==>: 翰林院待诏 19
转载于:.html
本文标签: 链表
版权声明:本文标题:链表 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1730863037a917248.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论