当前位置: 首页 > news >正文

网站建设小技巧克隆网站后台

网站建设小技巧,克隆网站后台,学网站建设要学什么,外贸网站建设模版目录 整体框架IMyLinkedList接口IndexNotLegalException异常类MyLinkedList类成员变量(节点信息)addFirst(头插)addLast(尾插)在指定位置插入数据判断是否存在移除第一个相等的节点移除所有相等的节点链表的长度打印链表释放回收链表 整体框架 IMyLinkedList接口 这个接口用来…

目录

  • 整体框架
  • IMyLinkedList接口
  • IndexNotLegalException异常类
  • MyLinkedList类
    • 成员变量(节点信息)
    • addFirst(头插)
    • addLast(尾插)
    • 在指定位置插入数据
    • 判断是否存在
    • 移除第一个相等的节点
    • 移除所有相等的节点
    • 链表的长度
    • 打印链表
    • 释放回收链表

整体框架

在这里插入图片描述

IMyLinkedList接口

这个接口用来存放所有方法,之后用MyLinkedList来实现这个接口,重写里面的方法

public interface IMyLinkedList {//头插法public void addFirst(int data);//尾插法public void addLast(int data);//任意位置插入,第一个数据节点为0号下标public void addIndex(int index,int data);//查找是否包含关键字key是否在单链表当中public boolean contains(int key);//删除第一次出现关键字为key的节点public void remove(int key);//删除所有值为key的节点public void removeAllKey(int key);//得到链表的长度public int size();//打印链表public void display();//释放链表public void clear();
}

IndexNotLegalException异常类

IndexNotLegalExceprion异常类用来判断index是否合法

public class IndexNotLegalException extends RuntimeException{public IndexNotLegalException() {}public IndexNotLegalException(String msg) {super(msg);}
}

MyLinkedList类

成员变量(节点信息)

static class ListNode {public int val;public ListNode prev;public ListNode next;public ListNode (int val){this.val = val;}}public ListNode head;public ListNode last;

addFirst(头插)

public void addFirst(int data) {ListNode newNode = new ListNode(data);if(head == null){head = last = newNode;}else{newNode.next = head;head.prev = newNode;head = newNode;}}

addLast(尾插)

public void addLast(int data) {ListNode newNode = new ListNode(data);if(head == null){head = last = newNode;}else{newNode.prev = last;last.next = newNode;last = newNode;}}

在指定位置插入数据

public void addIndex(int index, int data) {//判断index的合法性try{checkIndex(index);}catch(IndexNotLegalException e){e.printStackTrace();}if(index == 0){addFirst(data);return;}if(index == size()){addLast(data);return;}ListNode newNode = new ListNode(data);ListNode cur = head;while(index != 0){cur = cur.next;index--;}newNode.next = cur;newNode.prev = cur.prev;cur.prev.next = newNode;cur.prev = newNode;}private void checkIndex(int index){if(index<0 || index>size()){throw new IndexNotLegalException("Index不合法...");}}

判断是否存在

public boolean contains(int key) {ListNode cur = head;while(cur != null){if(cur.val == key){return true;}cur = cur.next;}return false;}

移除第一个相等的节点

public void remove(int key) {ListNode cur = head;if(head.val == key && head == last){head = last = null;return;}//如果删除的在head节点if(head.val == key){head = head.next;head.prev = null;return;}while(cur != null){if(cur.val == key){cur.prev.next = cur.next;if(cur.next == null){last = cur.prev;break;}cur.next.prev = cur.prev;}cur = cur.next;}}

移除所有相等的节点

public void removeAllKey(int key) {ListNode cur = head;if(head.val == key && head == last){head = last = null;return;}//如果删除的在head节点if(head.val == key){head = head.next;head.prev = null;}while(cur != null){if(cur.val == key){cur.prev.next = cur.next;if(cur.next == null){last = cur.prev;break;}cur.next.prev = cur.prev;}cur = cur.next;}}

链表的长度

 public int size() {int count = 0;ListNode cur = head;while (cur != null) {count++;cur = cur.next;}return count;}

打印链表

    public void display() {ListNode cur = head;while (cur != null) {System.out.print(cur.val + " ");cur = cur.next;}System.out.println();}

释放回收链表

public void clear() {ListNode cur = head;while(cur != null){ListNode curN = cur.next;cur.prev = null;cur.next = null;cur = curN;}}
http://www.yayakq.cn/news/512532/

相关文章:

  • 我做的网页怎么是危险网站北京住房城乡建设部网站
  • 湛江建设培训学校网站高端网站建设需要多少钱
  • 网站排名是什么意思网站建设哪公司好
  • 国家胸痛中心建设网站平面设计网站有哪些比较好的
  • 网站设计与建设开发装修网站设计图推荐
  • 定制型网站常用网站推广方法电商
  • 网上订酒店 网站开发重庆网络建站
  • 一级a做爰片免费网站短视频WordPress侧滑手机菜单
  • 做网站需要学哪些语言湖北短视频seo营销
  • 山东省建设发展研究院网站wordpress连接数据库文件
  • 做网站网站的虚拟空间企业网站制作公司有哪些
  • 安庆市网站建设制作绿色为主色的网站
  • 免费的导航页如何写一份网站优化建设的方案
  • 哪里有整站优化温州seo关键词优化
  • 做模特的网站wordpress empty
  • 建站做网站哪家好常州网络优化排名
  • 长春设计网站wordpress附件分离
  • 网站如何接广告网页设计与制作论文5000字
  • 发帖效果好的网站互联网推广营销都选隐迅推
  • 邮票上的化学史网站开发广西施工员证书查询
  • wordpress制作小说站教程网站模板可以自己做
  • 网站开发方式的选择寿光建设局网站
  • 制作网站团队wordpress wp大学
  • 什么是网站设计最新新闻热点事件及评论
  • 大学学术建设专题网站wordpress 页面目录下
  • 怀来县住房和城乡规划建设局网站企业网站开发前后台模块设计
  • 音响网站模板免费制作简历的app
  • html5 自适应网站信息分类网站好建吗
  • 邢台县建设局网站高端顺口公司名字
  • 建设网站的理由wordpress后台中文