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

定制网站收费wordpressμ

定制网站收费,wordpressμ,怀化优化网站排名,网站建设初学题目 输入k个排序的链表#xff0c;请将它们合并成一个排序的链表。 分析#xff1a;利用最小堆选取值最小的节点 用k个指针分别指向这k个链表的头节点#xff0c;每次从这k个节点中选取值最小的节点。然后将指向值最小的节点的指针向后移动一步#xff0c;再比较k个指…题目 输入k个排序的链表请将它们合并成一个排序的链表。 分析利用最小堆选取值最小的节点 用k个指针分别指向这k个链表的头节点每次从这k个节点中选取值最小的节点。然后将指向值最小的节点的指针向后移动一步再比较k个指针指向的节点并选取值最小的节点。重复这个过程直到所有节点都被选取出来。 解 public class Test {public static void main(String[] args) {ListNode listNode1 new ListNode(1);ListNode listNode2 new ListNode(2);ListNode listNode3 new ListNode(3);ListNode listNode4 new ListNode(4);ListNode listNode5 new ListNode(5);ListNode listNode6 new ListNode(6);ListNode listNode7 new ListNode(7);ListNode listNode8 new ListNode(8);ListNode listNode9 new ListNode(9);listNode1.next listNode4;listNode4.next listNode7;listNode2.next listNode5;listNode5.next listNode8;listNode3.next listNode6;listNode6.next listNode9;ListNode[] lists {listNode1, listNode2, listNode3};ListNode result mergeKLists(lists);while (result ! null) {System.out.println(result.val);result result.next;}}public static ListNode mergeKLists(ListNode[] lists) {ListNode dummy new ListNode(0);ListNode cur dummy;PriorityQueueListNode minHeap new PriorityQueue((n1, n2) - n1.val - n2.val);for (ListNode list : lists) {if (list ! null) {minHeap.offer(list);}}while (!minHeap.isEmpty()) {ListNode least minHeap.poll();cur.next least;cur least;if (least.next ! null) {minHeap.offer(least.next);}}return dummy.next;} }分析按照归并排序的思路合并链表 输入的k个排序链表可以分成两部分前k/2个链表和后k/2个链表。如果将前k/2个链表和后k/2个链表分别合并成两个排序的链表再将两个排序的链表合并那么所有链表都合并了。合并k/2个链表与合并k个链表是同一个问题可以调用递归函数解决。 解 public class Test {public static void main(String[] args) {ListNode listNode1 new ListNode(1);ListNode listNode2 new ListNode(2);ListNode listNode3 new ListNode(3);ListNode listNode4 new ListNode(4);ListNode listNode5 new ListNode(5);ListNode listNode6 new ListNode(6);ListNode listNode7 new ListNode(7);ListNode listNode8 new ListNode(8);ListNode listNode9 new ListNode(9);listNode1.next listNode4;listNode4.next listNode7;listNode2.next listNode5;listNode5.next listNode8;listNode3.next listNode6;listNode6.next listNode9;ListNode[] lists {listNode1, listNode2, listNode3};ListNode result mergeKLists(lists);while (result ! null) {System.out.println(result.val);result result.next;}}public static ListNode mergeKLists(ListNode[] lists) {if (lists.length 0) {return null;}return mergeLists(lists, 0, lists.length);}private static ListNode mergeLists(ListNode[] lists, int start, int end) {if (start 1 end) {return lists[start];}int mid (start end) / 2;ListNode head1 mergeLists(lists, start, mid);ListNode head2 mergeLists(lists, mid, end);return merge(head1, head2);}private static ListNode merge(ListNode head1, ListNode head2) {ListNode dummy new ListNode(0);ListNode cur dummy;while (head1 ! null head2 ! null) {if (head1.val head2.val) {cur.next head1;head1 head1.next;}else {cur.next head2;head2 head2.next;}cur cur.next;}cur.next head1 null ? head2 : head1;return dummy.next;} }
http://www.dnsts.com.cn/news/256056.html

相关文章:

  • 平顶山哪里有做网站的公司天河岗顶棠下上社网站建设公司
  • 深圳加盟网站建设wordpress meta 排序
  • 合肥哪家制作网站青岛seo服务公司
  • 软件开发人工收费标准seo 优化一般包括哪些内容
  • 有什么做第二职业的网站吗网络营销的核心是什么
  • 佛山搭建建网站哪家好南通仿站定制模板建站
  • 婚纱网站开发背景织梦建站教程全集
  • 婚嫁行业网站模板外贸中国机械加工网
  • 民和网站建设公司权威发布新冠用药
  • 外包网站开发安全吗h5编辑工具
  • 如何建微信微网站音乐网站答辩
  • 厦门的网站陶瓷 网站模板
  • 网络有限公司做女装网站的wordpress自己弄博客
  • 青岛公司建网站公司网站后台英语
  • 适合平面设计师的网站做网站公司 深圳信科
  • 怎么做中英文版网站西部数码网站管理助手4.0 破解版
  • 电子商务毕业设计设计电商网站建设网络营销方案500字
  • 企业开通网站的费用怎么做分录怎么做网站的教程
  • 做3d模型的叫什么牛的网站软件需求分析文档范例
  • 网站建设需要的人才建设网站的价格是多少
  • 中国建设教育协会网站查南昌网站推广¥做下拉去118cr
  • 建设网站需要些什么手续wordpress获取qq头像
  • 嘉兴网站建设wmcn比较好的wordpress主题
  • 工信部备案网站wordpress用户注册协议
  • 做电影网站怎样赚钱网站设计的任务
  • 深圳led网站建设做网站交接需要哪些权限
  • 关于网站开发的文章湖南网站建设公司排名
  • 兰州优化网站排名wordpress美金
  • 快速提高网站权重提升wordpress 表情没反应
  • 个人印章在线制作网站知乎营销推广