面试中问了一个链表对折的问题,写的完全不着边。后来百度了一下,自己根据原理重新写了一下。

package leecode;public class FoldLinkedList {public static void main(String[] args) {Node node1 = new Node(1);Node node2 = new Node(2);Node node3 = new Node(3);Node node4 = new Node(4);Node node5 = new Node(5);Node node6 = new Node(6);Node node7 = new Node(7);node1.next = node2;node2.next = node3;node3.next = node4;node4.next = node5;node5.next = node6;node6.next = node7;Node head = node1;traverseList(head);//使用快慢指针,找到中间对折处节点Node fast, slow;fast=slow=node1;while(fast.next!=null && fast.next.next!=null){fast = fast.next.next;slow = slow.next;}//slow是中间节点,list2是第二个链表。Node list2 = slow.next;slow.next = null;//将第二个链表反转Node head2 = reverseList(list2);//将list2插入到list1中Node head1, temp,temp2;head1 = node1;//        traverseList(head1);
//        traverseList(head2);while(head1 != null && head2 != null){temp = head1.next;temp2 = head2.next;head1.next = head2;head2.next = temp;head1 = temp;head2 = temp2;}head = node1;traverseList(head);}//遍历链表public static void traverseList(Node head){System.out.println("***********list output**************");while(head != null){System.out.println(head.value);head = head.next;}}public static Node reverseList(Node head){Node pre, cur, temp;pre=null;cur=head;while(cur != null){temp = cur.next;cur.next = pre;pre = cur;cur = temp;}return pre;}//
}class Node{int value;Node next;Node(int value){this.value = value;}
}

leecode--链表对折相关推荐

  1. Leetcode 143 链表对折

    思路: 1. 通过快慢指针,一个步长为1, 一个步长为2, 找到链表中点. 2. 前/后 半段链表反转. 3. 与另一半链表归并插入. class Solution:def reorderList(s ...

  2. 链表之判断一个链表是否为回文结构(二)

    package com.zuo.linkedlist;import java.util.Stack;import com.zuo.linkedlist.IsPalindrome1.Node;/*** ...

  3. 字节跳动3月面试遇到的高频算法题

    本文汇总了牛客2021.3.1~2021.3.30 面经考到的Leetcode题目 最终的高频题榜单数据可以在CodeTop题库(https://codetop.cc)查询,支持按部门.岗位分类筛选. ...

  4. 2019年BET公司面试题目大汇总

    [1]百度提前批一面(c++开发): 1.关键字static作用,函数加static和不加static区别 2.const关键字作用,const和宏定义有什么区别,用哪个?(宏定义太多会导致代码膨胀) ...

  5. 左神数据结构与算法(基础)——表、树、图、贪心、递归

    2.1 哈希表.有序表.单链表和双链表 ①哈希表的简单介绍 1>哈希表在使用层面可以理解为一种集合结构. 2>如果只有key,没有伴随数据value,可以使用HashSet结构 3> ...

  6. 2021秋招 NLP算法岗面经

    春招面了阿里和微信积攒了一些面试经验,春招只要拿到offer也不用面太多.秋招就面得比较多,包括:字节.微信.百度.华为.美团.拼多多.快手.虾皮(shopee),也都拿到了offer. 一.春招实习 ...

  7. insertion Sort List (链表的插入排序) leecode java

    逻辑简单,代码难写,基础不劳,leecode写注释不能出现中文,太麻烦,我写了大量注释,链表问题最重要的就是你那个指针式干啥的 提交地址https://oj.leetcode.com/problems ...

  8. Leecode 21. 合并两个有序链表——Leecode大厂热题100道系列

    我是小张同学,立志用最简洁的代码做最高效的表达 以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言! 传送门-->Leecode大厂热题100道系列题解 题目描 ...

  9. Leecode19. 删除链表的倒数第 N 个结点——Leecode大厂热题100道系列

    我是小张同学,立志用最简洁的代码做最高效的表达 以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言! 传送门-->Leecode大厂热题100道系列题解 题目描 ...

最新文章

  1. mysql内置多个数据存储引擎_一个mysql数据库,既有myisam存储引擎,又有innodb存储引擎,参数如...
  2. DirectoryEntry所有字段对应解释
  3. new String(123) 创建了几个对象?
  4. oracle sde 安装失败,sde无法安装案例
  5. Java语言中的----数组
  6. 路飞学城-Python爬虫集训-第一章
  7. PCWorld 评选 52 个超实用网站
  8. 关于EFM32下的w25q256的使用
  9. android+反编译加广告,追书神器Android版,反编译去广告基本教程
  10. Nature:我叫“P值” 这是我的故事
  11. 2013年MBA、MPA、MPAcc入学考试综合能力辅导教材
  12. linux中cpu使用率命令,LINUX下查看CPU使用率的命令
  13. Harris角点检测,及其Matlab和OpenCV实现
  14. 日语截图翻译软件(百度ocr+python3+pyqt5)
  15. 2010年9月2号安排~
  16. 检测图中的负循环 | (贝尔曼福特)
  17. strcat函数的用法
  18. Mobius反演总结
  19. 成矿远景叠加分析matlab代码,深水潭金成矿地质特征及成矿远景分析
  20. php实现bigpipe

热门文章

  1. 基于PHP+小程序(MINA框架)+Mysql数据库的小说小程序系统设计与实现
  2. HDU1814 Peaceful Commission 2SAT
  3. CG原画绘画教程之人物-张聪-专题视频课程
  4. ECDSA数字签名算法
  5. 双目立体视觉几何框架详解
  6. 为什么说“水果焦虑”是个伪命题?
  7. 多元统计分析及R语言建模(第五版)——第6章 判别分析课后习题
  8. Mac电脑如何使用时间机器进行备份?
  9. 微信考勤签到 php,【投稿】微信签到打卡领积分源码,每日积分签到
  10. python从入门到实践答案博客园_Python编程:从入门到实践——【作业】——第四章(操作列表)...