数据结构和算法
cnki_ok
这个作者很懒,什么都没留下…
展开
-
写一段代码判断一个单向链表中是否有环
#include #include using namespace std;struct node{ int data; struct node *next;}*linklist,*s,*head;mapm;bool IsLoop(node *head){ node *pSlow=head; node *pFast=head; while(pSl原创 2012-08-05 10:41:32 · 1315 阅读 · 0 评论 -
设元素入栈的顺序是1、2、3、…、n ,则所有可能的出栈序列共有几种
(2n)!/(n!(n+1)!)原创 2012-08-01 14:02:28 · 6837 阅读 · 0 评论 -
用栈来实现队列
用栈来实现队列时,采用两个栈:一个用于入队列,一个用于出队列。Queue{ Stack enStack; Stack deStack;}当有元素入队列时,插入enStack的栈定;当有元素出队列时,检查deStack是否为空,如果为空则先把栈enStack的全部元素依次放入deStack;然后和deStack不为空的情况一样,删除deStack栈顶的元素。v转载 2012-08-01 12:59:30 · 613 阅读 · 0 评论 -
设a,b,c三个元素的进栈次序是a,b,c,符号PUSH与POP分别表示对堆栈进行一次进栈操作与一次出栈操作
1、 设a,b,c三个元素的进栈次序是a,b,c,符号PUSH与POP分别表示对堆栈进行一次进栈操作与一次出栈操作(1) 请分别写出所有可能的出栈序列以及获得该出栈序列的操作序列(2) 指出不可能出现的出栈序列可能的序列:a b c a c bb a cb c ac b a不可能的序列:c a b由于比较简单push pop 过程就省略了转载 2012-08-01 13:43:36 · 8658 阅读 · 0 评论 -
10亿个浮点数,求出其中最大的10000个.
#include "stdafx.h"#include #include #include #include // for greaterusing namespace std;int _tmain(int argc, _TCHAR* argv[]){ vector bigs(10000,0); vector::iterator it;转载 2012-08-14 11:00:36 · 1660 阅读 · 0 评论 -
给定一单链表的表头指针和指向其中一个节点的指针,要求以该指针为头将原链表逆序
给定一单链表的表头指针 和指向其中一个节点的指针,要求以该指针为头将原链表逆序排列,例如: N1->N2->N3->N4->N5->NULL pHEAD = N1,pSTART = N3,返回N3->N2->N1->N5->N4->NULL N1->N2->N3->N4->N5->NULL pHEAD = N1,pSTART = N5,返回这个N5->N4->N3->N2->N1->NULL N1原创 2012-08-05 10:03:07 · 2674 阅读 · 0 评论 -
重要链接
http://hi.baidu.com/xiangzifengshi/blog数据结构算法 http://blog.sina.com.cn/s/articlelist_1615857051_1_1.html linux c面试题原创 2012-07-26 15:16:59 · 682 阅读 · 0 评论 -
由中序序列和后序序列唯一确定一棵二叉树
已知一棵二叉树的中序和后序序列如下: 中序:G L D H B E I A C J F K 后序:L G H D I E B J K F C A则可以唯一确定一棵二叉树。#include转载 2012-07-26 15:31:22 · 6490 阅读 · 0 评论 -
二叉查找树的算法实现
二叉查找树主要包含以下算法:search,insert,delete,max,min,successor和predecessor。下面的程序是在vc6.0下实现的。其中,关于insert和search提高了迭代和递归两个版本,display使用了递归版本,其余算法都只提供了迭代版本。#include using namespace std;templateclass BinaryS转载 2012-07-26 15:12:01 · 732 阅读 · 0 评论 -
用栈实现队列
用栈来实现队列时,采用两个栈:一个用于入队列,一个用于出队列。Queue{ Stack enStack; Stack deStack;}当有元素入队列时,插入enStack的栈定;当有元素出队列时,检查deStack是否为空,如果为空则先把栈enStack的全部元素依次放入deStack;然后和deStack不为空的情况一样,删除deStack栈顶的元素。v转载 2012-07-26 15:10:42 · 1087 阅读 · 0 评论 -
插入排序
#include #include "SortMethod.h"using namespace std;原创 2014-08-04 20:29:16 · 534 阅读 · 0 评论