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

哪家公司做企业网站稳定优惠网站备案信息注销

哪家公司做企业网站稳定优惠,网站备案信息注销,ios注册开发者账号,vue 企业网站模板目录 单选链表的基本实现 有序列表的合并#xff08;双指针法#xff09; 链表的反转 链表实现两数之和 判定链表是否有环 单选链表的基本实现 public class LinkedList1 {//头节点Node first;//尾节点Node last;//大小int size 0;//头插法public void addFirst(int…目录 单选链表的基本实现 有序列表的合并双指针法 链表的反转  链表实现两数之和  判定链表是否有环 单选链表的基本实现 public class LinkedList1 {//头节点Node first;//尾节点Node last;//大小int size 0;//头插法public void addFirst(int v) {Node newNode new Node(v);Node f first;first newNode;if (f null) {last newNode;} else {newNode.next f;}size;}//尾插法public void addLast(int v) {Node newNode new Node(v);Node l last;last newNode;if (l null) {first newNode;} else {l.next newNode;}size;}//使用节点尾插public void addNode(Node node){if (last null){lastnode;firstnode;}else {Node l last;l.nextnode;lastnode;}}//链表的遍历Overridepublic String toString() {StringJoiner sj new StringJoiner(-);for (Node n first; n ! null; n n.next) {sj.add(String.valueOf(n.val));}return sj.toString();}public static class Node {int val;Node next;Node(int val) {this.val val;}} }有序列表的合并双指针法 //链表的有序合并排序public static LinkedList1 merge(LinkedList1 list1, LinkedList1 list2) {Node n1 list1.first, n2 list2.first;LinkedList1 result new LinkedList1();while (n1 ! null || n2 ! null) {if (n1 null) {result.addLast(n2.val);n2 n2.next;continue;}if (n2 null) {result.addLast(n1.val);n1 n1.next;continue;}if (n1.val n2.val) {result.addLast(n1.val);n1 n1.next;} else {result.addLast(n2.val);n2 n2.next;}}return result;} 测试 LinkedList1 linkedList1 new LinkedList1();linkedList1.addLast(1);linkedList1.addLast(4);linkedList1.addLast(6);LinkedList1 linkedList2 new LinkedList1();linkedList2.addLast(2);linkedList2.addLast(3);linkedList2.addLast(5);linkedList2.addLast(9);System.out.println(链表1linkedList1);System.out.println(链表2linkedList2);//有序链表的合并排序System.out.println(链表1与链表2合并LinkedList1.merge(linkedList1, linkedList2)); 链表的反转  //链表的反转public static LinkedList1 reverseLinked(LinkedList1 list1) {StackNode stack new Stack();for (Node n list1.first; n ! null; n n.next) {stack.add(n);}LinkedList1 result new LinkedList1();while (!stack.isEmpty()) {result.addLast(stack.pop().val);}return result;} 测试 LinkedList1 linkedList1 new LinkedList1();linkedList1.addLast(1);linkedList1.addLast(4);linkedList1.addLast(6);System.out.println(链表1linkedList1);//链表的反转System.out.println(链表1反转后LinkedList1.reverseLinked(linkedList1)); 测试结果 链表实现两数之和  //两数之和public static LinkedList1 addNumber(LinkedList1 list1, LinkedList1 list2) {Node n1 list1.first, n2 list2.first;LinkedList1 result new LinkedList1();int carry 0;while (n1 ! null || n2 ! null) {int x n1 ! null ? n1.val : 0;int y n2 ! null ? n2.val : 0;int sum x y carry;carry sum / 10;result.addLast(sum % 10);if (n1 ! null) {n1 n1.next;}if (n2 ! null) {n2 n2.next;}}if (carry ! 0) {result.addLast(carry);}return result;} 测试 LinkedList1 linkedList1 new LinkedList1();linkedList1.addLast(1);linkedList1.addLast(4);linkedList1.addLast(6);LinkedList1 linkedList2 new LinkedList1();linkedList2.addLast(2);linkedList2.addLast(3);linkedList2.addLast(5);linkedList2.addLast(9);//两数之和System.out.println(链表1linkedList1);System.out.println(链表2linkedList2);System.out.println(链表1链表2LinkedList1.addNumber(linkedList1,linkedList2)); 测试结果注意从左到右依次是个十百位 判定链表是否有环 方法一 通过set集合 //set集合判断是否有环public static boolean hasCycle(Node node) {SetNode set new HashSet();while (node ! null) {if (set.contains(node)) {return true;}set.add(node);node node.next;}return false;} 方法二 通过快慢指针 //快慢指针判断是否有环public static boolean hasCycle2(Node node) {Node fast node;//快指针Node slow node;//慢指针//判断是不是空节点if (node null) {return false;}while (fast ! null fast.next ! null slow ! null) {fast fast.next.next;slow slow.next;if (fast slow) {return true;}}return false;} 测试 无论方法一还是二 测试结果都是相同 一般使用方法二 效率更高 更节省资源 LinkedList1.Node node1 new LinkedList1.Node(1);LinkedList1.Node node2 new LinkedList1.Node(2);LinkedList1.Node node3 new LinkedList1.Node(3);LinkedList1.Node node4 new LinkedList1.Node(4);LinkedList1.Node node5 new LinkedList1.Node(5);node1.nextnode2;node2.nextnode3;node3.nextnode4;node4.nextnode5;node5.nextnode3;//环 注意这是专门设置的环//set集合判断是否有环System.out.println(set集合判断是否有环:LinkedList1.hasCycle(node1));//快慢指针判断是否有环System.out.println(快慢指针判断是否有环:LinkedList1.hasCycle2(node1)); 测试结果
http://www.zqtcl.cn/news/995347/

相关文章:

  • 讯美智能网站建设自己域名做网站
  • 自己做网站优化韩国外贸平台
  • 齐河建设局网站长沙市住房和建设局官方网站
  • 萧山区住房和城乡建设局网站wordpress网站合并
  • 做背景网站网站建设与维护制作网页
  • 网站建设公司知名营销型企业网站项目策划表
  • 写作网站哪个最好企业培训机构有哪些
  • 江苏省水利工程建设局网站域名不备案可以正常使用吗
  • 对网站开发语言的统计网站内容建设包括什么
  • 西安高端网站建设怎样开公司
  • 华为做网站免费签名设计在线生成
  • 网站产品整合推广爱网聊的男人是什么心理
  • 武威市建设厅网站汕头seo外包公司
  • 酒泉网站怎么做seo东莞高明网站设计
  • 沧州网站建设联系电话杭州设计公司logo
  • 网站子站点是什么意思亚马逊国际站官网
  • 影视cms哪个好苏州关键词优化搜索排名
  • 杭州微信网站开发网站优化公司免费咨询
  • 宣武富阳网站建设南昌公众号开发公司
  • 免费的网站推荐下载wordpress %s
  • 网站的原理百度旧版本下载
  • 衡水网站建设地方新网域名证书下载
  • 自己做的创意的网站什么是淘宝seo
  • 网站开发包含哪些网站设计实例
  • 网站建设 核算棋牌源码论坛
  • 杭州网站建设案例网页设计程序
  • 网站建设的相关问题湛江网站开发
  • 网站开发作业wordpress用户角色
  • 品牌网站制作建设微信小程序开发需要什么技术
  • 新网站注册国内食品行业网站开发