数据结构与算法
每天积累一点点#
蜗牛
展开
-
微软数据结构面试题
1、反转一个链表。循环算法。 1 List reverse(List l) { 2 if(!l) return l; 3 list cur = l.next; 4 list pre = l; 5 list tm转载 2012-05-01 16:31:20 · 523 阅读 · 0 评论 -
数据结构之单链表
整理了单链表中常出的题目的网站:http://www.cnblogs.com/Jax/archive/2009/12/11/1621504.html原创 2012-08-25 17:00:42 · 407 阅读 · 0 评论 -
单链表判环判交问题
【摘要】有一个单链表,其中可能有一个环,也就是某个节点的next指向的是链表中在它之前的节点,这样在链表的尾部形成一环。1、如何判断一个链表是不是这类链表?2、如果链表为存在环,如果找到环的入口点?扩展:判断两个单链表是否相交,如果相交,给出相交的第一个点。有一个单链表,其中可能有一个环,也就是某个节点的next指向的是链表中在它之前的节点,这样在链表的尾部形成一环。问题:1、如何转载 2012-08-25 16:51:31 · 1260 阅读 · 0 评论 -
四道有趣的单链表面试题(单链表反序、找出链表的中间元素、链表排序、判断一个单链表是否有环) (转)
http://www.cppblog.com/koson/archive/2010/04/21/113142.html以下给出链表结点的数据结构:1 typedef struct _list_node2 {3 double keyVal;4 struct _list_node *next;5 }ListNode;Q1 单链表的反序转载 2012-08-25 11:56:28 · 1468 阅读 · 0 评论 -
数据结构之卡特兰数
http://wenku.baidu.com/view/5e5f1520dd36a32d737581e7.html卡塔兰数是组合数学中一个常出现在各种计数问题中出现的数列。由以比利时的数学家欧仁·查理·卡塔兰 (1814–1894)命名。卡塔兰数的一般项公式为 另类递归式: h(n)=((4*n-2)/(n+1))*h(n-1);前原创 2012-09-02 16:29:14 · 3673 阅读 · 0 评论 -
数据结构之回溯法
数据结构书上讲了下回溯法,于是在hdu找了个题目:HDU 2553 N皇后问题http://acm.hdu.edu.cn/showproblem.php?pid=2553// 采用深度搜索的方式进行搜索,每次放置一个皇后是都得用check()函数进行判断,要是可以放下去,则皇后数目加一,继续进行深度搜索 //这里采用的不是传统的二维数组,而是一位数组 queen原创 2012-09-02 11:30:13 · 765 阅读 · 0 评论 -
二叉树的非递归遍历
看到一个写二叉树非递归遍历写的比较好的博客,就贴过来了。http://www.cnblogs.com/dolphin0520/archive/2011/08/25/2153720.html二叉树是一种非常重要的数据结构,很多其它数据结构都是基于二叉树的基础演变而来的。对于二叉树,有前序、中序以及后序三种遍历方法。因为树的定义本身就是递归定义,因此采用递归的方法去实现树的三种遍历不仅容易理解原创 2012-09-01 10:32:57 · 646 阅读 · 0 评论 -
数据结构之栈的应用(迷宫问题)
#include #include using namespace std;#define maxn 100int m, n; //长宽int dir[4][2] = {0, 1, -1, 0, 0, -1, 1, 0}; //下,左右,上(顺时针方向)int maze[maxn][maxn];int visited[maxn][maxn];stru原创 2012-08-29 16:40:49 · 734 阅读 · 0 评论 -
求最大子序列和
这道题是DP的入门题,以前在ACM的时候做过,但告别ACM已经一年多了,重新捡起来写了一下,也是今年腾讯实习生招聘的一道笔试题。#include using namespace std;int MaxSeqSum(const int A[], int N) //o(n^2){int i, j;int s1, s2;s1 = s2 = 0;for原创 2012-09-12 11:46:21 · 554 阅读 · 0 评论