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

网站建设网络推广加盟虚拟产品网站

网站建设网络推广加盟,虚拟产品网站,宣传彩页设计,数学wordpress博客LinkedList是双向链表结构可以适用于任意插入场景下的插入和删除#xff0c;效率较高#xff0c;时间复杂度为O(1)。 模拟实现 public class MyLinkedList {static class ListNode{private int val;//值域private ListNode prev;//前驱private ListNode next;//后继public …LinkedList是双向链表结构可以适用于任意插入场景下的插入和删除效率较高时间复杂度为O(1)。 模拟实现 public class MyLinkedList {static class ListNode{private int val;//值域private ListNode prev;//前驱private ListNode next;//后继public ListNode(int val) {this.val val;}}public ListNode head;//双向链表的头节点public ListNode last;//双向链表的尾节点 }LinkedList常用方法 //头插法 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 clear()实现addFirst方法头插法 public void addFirst(int data){ListNode node new ListNode(data);//如果链表为空 插入的元素就是头节点和尾节点if (headnull){head node;last node;}else {node.next head;//使node的后继是现在的头节点head.prev node;//使现在的头节点的前驱是nodehead node;//让node成为新的头节点} }实现addList方法尾插法 public void addLast(int data){ListNode node new ListNode(data);//和头插一样if (lastnull){head node;last node;}else {last.next node;//使现在尾节点的后继为nodenode.prev last;//使node的前驱为现在的尾节点last last.next;//让node成为尾节点} }实现size方法求链表长度 public int size(){ListNode cur head;int count 0;while (cur!null){count;cur cur.next;}return count; }实现addIndex方法在任意位置插入元素 public void addIndex(int index,int data){//插入的位置如果为0 可以使用头插法if (index0){addFirst(data);return;}//如果在最后一个位置插入 可以使用尾插法if (indexsize()){addLast(data);return;}ListNode node new ListNode(data);//判断要插入的下标是否合法if (index0||indexsize()){System.out.println(index 不合法index);return;}ListNode cur head;//让cur走到要插入的位置while (index!0){cur cur.next;index--;}node.next cur;cur.prev.next node;node.prev cur.prev;cur.prev node; }实现contains方法查找是否包含关键字key是否在单链表当中 public boolean contains(int key){if (headnull){return false;}ListNode cur head;while (cur!null){if (cur.valkey){return true;}cur cur.next;}return false; }实现remove方法删除第一次出现关键字为key的节点 public void remove(int key){ListNode cur head;while (cur!null){if (cur.valkey){//删除头节点if (curhead){head head.next;if (headnull){//只有一个头节点cur.prevnull;}else {lastnull;}}else {if (cur.next!null){//删除中间节点cur.prev.nextcur.next;cur.next.prevcur.prev;}else {//删除尾节点cur.prev.nextcur.next;lastlast.prev;}}return;}else {curcur.next;}} }实现removeAllkey删除所有值为key的节点 public void removeAllKey(int key){ListNode cur head;while (cur!null){if (cur.valkey){//删除头节点if (curhead){head head.next;if (headnull){//只有一个头节点cur.prevnull;}else {lastnull;}}else {if (cur.next!null){//删除中间节点cur.prev.nextcur.next;cur.next.prevcur.prev;}else {//删除尾节点cur.prev.nextcur.next;lastlast.prev;}}curcur.next;}else {curcur.next;}} }实现clear方法清除链表 public void clear(){ListNode cur head;while (cur!null){ListNode curNew cur.next;cur.prevnull;cur.nextnull;cur curNew;}headnull;lastnull; }
http://www.pierceye.com/news/617911/

相关文章:

  • 昌乐营销型网站建设个人管理系统
  • 手机网站开发位置定位天津和平做网站公司
  • 搜搜提交网站入口国外wordpress空间
  • python 做网站 数据库做企业官网还有必要吗
  • 数据录入网站开发安阳县实验中学
  • 网站 风格镜子厂家东莞网站建设
  • 做网站策划需要用什么软件网站建设 好发信息网
  • wordpress网站优化pc建站 手机网站
  • 教研网站建设方案如何网上接单做设计
  • 魏县网站建设推广怎样做seo搜索引擎优化
  • 网站优化外链怎么做东莞公司注册流程及需要的材料
  • 做交通锁具网站拍摄广告片制作公司
  • 学院网站建设项目范围变更申请表建设工程公司名称大全
  • 南京学校网站建设策划做的好的电商网站项目
  • apache 配置php网站石家庄做公司网站
  • 新动力网站建设wordpress顶部图片大小
  • 网站开发 手机 电脑手机网站建设文章
  • 网站维护的过程及方法济南街道办网站建设
  • 服务佳的小企业网站建设智慧团建pc端入口
  • 兰州北山生态建设局网站今天重大新闻2021
  • 民权网站建设用别人服务器做网站
  • 周口网站建设 网站制作 网络推广wordpress4.0安装教程
  • 长治市建设局网站自己做网站的优势
  • 网站管理与维护的优势php 做视频网站
  • 建设部网站业绩补录商河 网站建设
  • 网站页面设计考虑要素建站知识
  • 打电话叫人做网站城阳网站制作
  • 网页制作素材网站推荐软件开发属于什么专业类别
  • 淘宝做基础销量怎么网站中国十大培训机构影视后期
  • 网站平台是怎么做财务的兴盛优选购物平台下载