每日算法(链表)
来源:互联网 发布:同盾大数据 编辑:程序博客网 时间:2024/05/16 11:46
1、一个有环链表,找出环路的开头结点。
LinkedListNode FindBeginning(LinkedListNode head){LinkedListNode slow = head;LinkedListNode fast = head;while(fast != null && fast.next !=null){slow = slow.next;fast = fast.next.next;if(slow == fast){break;}}if(fast ==null || fast.next ==null){return null;}slow = head;while(slow != fast){slow = slow.next;fast = fast.next;}return fast;}
2、检查链表是否为回文
boolean isPalindrome(LinkedListNode head){LinkedListNode slow = head;LinkedListNode fast = head;Stack<Integer> stack = new Stack<Integer>();while(fast !=null && fast.next !=null){stack.push(slow.data);slow = slow.next;fast = fast.next.next;}if(fast != null){slow = slow.next;}while(slow != null){int top = stack.pop().intValue();if(top != slow.data){return false;}slow = slow.next;}return true;}
0 0
- 每日算法(链表)
- 每日算法(一)
- 每日算法(二)
- 每日一算法(判断)
- 【每日算法】链表 & 例题选讲
- 每日一算法:老鼠走迷官(二)
- [每日练习]随机洗牌算法(Java)
- 每日学算法(一):插入排序
- 每日算法(数组与字符串)
- 每日算法(数组与字符串二)
- 每日一道算法题(1)
- 每日一道算法题(2)
- 每日一道算法题(3)
- 每日一道算法题(4)
- 每日一道算法题(5)
- 每日一道算法题(6)
- 每日一道算法题(7)
- 【每日算法】洗牌算法
- mac中点击version软件点击打不开怎么办
- github注意事项
- 选择排序 Java
- 排序(一):直接插入排序
- 法被打伤分不记得会变得很加班费吧就
- 每日算法(链表)
- 【原创】C语言处理文件数据(4)
- Selenium+Webdriver学习(三) 执行JS脚本
- 基站使用api说明
- HDU4960 Another OCD Patient
- HBase shell常用命令练习(1)
- 无线路由新改革:触摸更显质感
- Android 抽象布局之include、merge、Viewstub
- 黑马程序员——线程小结