![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构复习
张先森其实是张先生
这个作者很懒,什么都没留下…
展开
-
如何判断链表中是否有环
原文地址:http://blog.csdn.net/thefutureisour/article/details/8174313今天面试被问住了,很惭愧啊,回来上网查了一下思路。自己写了点程序。1.如何判断是否有环?如果有两个头结点指针,一个走的快,一个走的慢,那么若干步以后,快的指针总会超过慢的指针一圈。2.如何计算环的长度?第一次相遇(超一圈)时开始计数,第二次相遇时停止计数。3.如何判断环的入转载 2015-08-10 22:12:38 · 323 阅读 · 0 评论 -
【面试题】之数据结构目录
原文地址:http://blog.csdn.net/yeyuangen/article/details/19807101(一)链表操作专题1、反转一个链表。循环算法。2、反转一个链表。递归算法。 3、判断一个链表是否有循环。4、在一个链表中删除另一个链表中的元素。5、两个链表,一升一降。合并为一个升序链表。6、在双向链表中删除指定元素。(二)二叉树专题1、广度优先遍历二叉树。2、判断一颗二叉树是否转载 2015-08-10 22:28:46 · 314 阅读 · 0 评论 -
轻松搞定面试中的二叉树题目
原文地址:http://blog.csdn.net/luckyxiaoqiang/article/details/7518888转载 2015-08-10 22:31:18 · 319 阅读 · 0 评论 -
每日一题(35) - 栈的压入、弹出序列(验证出栈序列是否合法)
原文地址:http://blog.csdn.net/insistgogo/article/details/9326733题目来自剑指Offer题目:思路:根据弹出序列和一个辅助栈来模拟进栈操作。对于弹出序列中的一个元素V,1、如果栈为空或者栈顶元素不等于V,则去压栈序列中寻找结点V,(1)如果在压栈序列中能找到结点V,并把寻找结点V的过程中遇到的顶点压入辅助栈中。(2)如果不能找到结点V,则表示该元转载 2015-08-10 22:32:36 · 543 阅读 · 0 评论 -
(二) 如何判断链表中有无环
转载:原文地址单向链表中有环的话,如果我们对此链表进行遍历,则将无穷尽。因此有必要判断一个单向链表是否有环。假如一个单向链表中存在环,如下图: (一个小矩形代表链表中的一个节点)虚线箭头代表中间有无数节点。先说算法,然后再来证明算法的正确性。 以下算法可以判断一个单向链表中是否有环(不讨论详细数据结构,只简要说明。设结点的next域为指向下一结点的指针):/* 链表的头指针为h */i转载 2015-07-17 00:04:26 · 382 阅读 · 0 评论 -
(一)包含头结点的单链表
包含头节点(head)的单链表的学习总结。 头结点是指不包含data,只包含指针的节点。 如有错误的地方,请大家不吝指正。/** * 包含头结点的单链表 * @author zsk * */public class MyList { private Node head;//链表的头结点,只有指针,没有数据。 public MyList(){ this.hea原创 2015-07-19 01:48:19 · 840 阅读 · 0 评论