数据结构
文章平均质量分 80
giant7
这个作者很懒,什么都没留下…
展开
-
栈的顺序存储结构——双栈
栈的顺序存储结构——双栈。 双栈的图片: BothStack.hconst int StackSize=100; //100只是示例数据,需根据具体问题定义template class BothStack {public: BothStack( ) {top1= -1; top2=StackSize;} //构造函数,将两个栈分别初始化原创 2013-03-11 22:08:35 · 2247 阅读 · 0 评论 -
树的应用小算法大全--持续更新中
算法一: 判断两颗树是否相等,如相等则返回0,否则返回其他值。数据结构如下:typedef struct TreeNode {char c;TreeNode *leftchild;TreeNode *rightchild;}比较函数为:int Compare(TreeNode * tree1, TreeNode* tree2);解法分析:A,原创 2012-04-22 23:16:15 · 693 阅读 · 0 评论 -
判断一个链表是否有环
1、如何判断一个链表是不是这类链表? 2、如果链表为存在环,如果找到环的入口点?解答:一、判断链表是否存在环,办法为:设置两个指针(fast, slow),初始值都指向头,slow每次前进一步,fast每次前进二步,如果链表存在环,则fast必定先进入环,而slow后进入环,两个指针必定相遇。(当然,fast先行头到尾部为NULL,则为无环链表)程序如下:bool IsExi转载 2013-04-02 16:07:47 · 818 阅读 · 0 评论 -
动态规划算法
以前在学习非数值算法的时候,曾经了解过动态规划算法(Dynamic programming),以下是对Wikipedia上动态规划的翻译,图也是Wikipedia上的,仓促行文,不到之处,请方家指正。这篇文章的术语实在是太多了,所以我在文中加入了少量注释,一律以粗斜体注明。本文的不足之处将随时修正,MIT的《Introduction to Algorithms》第15章是专门讲动态规划的。转载 2013-04-02 18:43:54 · 1529 阅读 · 0 评论 -
没有学位,他通过以下四步进入Google
摘要:没上过大学,没有学士、硕士、博士学位这块敲门砖也能在谷歌coding,前Googler David Byttow在博客上为我们讲述了他如何进入Google的故事。自从发表了坚持编程( ABC: Always Be Coding - How to Land an Engineering Job)这篇文章,很多人问我在没有学历的情况下怎么获得在谷歌工作的机会的。你通向成功之路转载 2013-05-28 18:14:09 · 1013 阅读 · 0 评论 -
微软等名企面试题4--二叉树专题
声明:这篇博客的某些题目和答案成果源自于July和何海涛的博客,网址:点击打开链接 点击打开链接本人只是针对自己情况,把感兴趣的题目都罗列出来;针对其他的题目(不是来自上面两位),写出了自己的算法,仅供自己慢慢学习和品味。如有问题,请在博客下面留言。1 题目:输入一棵二元树的根结点,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路原创 2013-05-30 22:57:48 · 955 阅读 · 0 评论 -
微软面试题学习心得1
声明:这篇博客的某些题目和答案成果源自于July和何海涛的博客,网址:点击打开链接 点击打开链接本人只是针对自己情况,把感兴趣的题目都罗列出来;针对其他的题目(不是来自上面两位),写出了自己的算法,仅供自己慢慢学习和品味。如有问题,请在博客下面留言。1.把二元查找树转变成排序的双向链表题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建原创 2013-05-28 16:13:40 · 948 阅读 · 0 评论 -
微软等名企面试 题2
声明:这篇博客的某些题目和答案成果源自于July和何海涛的博客,网址:点击打开链接 点击打开链接本人只是针对自己情况,把感兴趣的题目都罗列出来;针对其他的题目(不是来自上面两位),写出了自己的算法,仅供自己慢慢学习和品味。如有问题,请在博客下面留言。11 题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。分析:这道题是2原创 2013-05-30 21:02:57 · 1108 阅读 · 0 评论 -
微软等名企面试题3
声明:这篇博客的某些题目和答案成果源自于July和何海涛的博客,网址:点击打开链接 点击打开链接本人只是针对自己情况,把感兴趣的题目都罗列出来;针对其他的题目(不是来自上面两位),写出了自己的算法,仅供自己慢慢学习和品味。如有问题,请在博客下面留言。原创 2013-05-31 23:11:55 · 959 阅读 · 0 评论 -
数据结构--图
图的邻接矩阵实现:#ifndef GRAPH_H //定义头文件#define GRAPH_H#include //引入标准库中的头文件using namespace std;const int MaxSize=12; //原创 2013-06-11 19:37:14 · 1326 阅读 · 0 评论 -
排序技术_各种算法原理 图解 代码实现
排序技术有很多种,下面简单介绍一下几种。一 插入排序1.1 直接插入排序基本思想:每次将一个待排序额记录按其关键码的大小插入到一个已经排好序的有序序列中,直到全部记录排好序。图解:代码实现://直接顺序排序void InsertSort(int r[], int n){ for (int i=2; i<n; i原创 2013-03-13 17:51:25 · 29670 阅读 · 9 评论 -
查找技术之线性表 图解和代码实现
查找技术可从以下几个方面去讨论:第一: 线性表的查找技术第二:树表的查找技术第三:散列表的查找技术 下面来讨论第一个:线性表的查找技术 1 顺序查找1.1顺序表的顺序查找基本思想:从线性表的一端向另一端逐个将关键码与给定值进行比较,若相等,则查找成功,给出该记录在表中的位置;若扫描完整个表都未找到,则失败,并给出信息 图片: 算法原创 2013-03-12 23:37:39 · 1431 阅读 · 0 评论 -
线性表之顺序表 图解和代码实现
线性表的顺序存储结构称为顺序表。 图解: 下面来看下顺序表的C++实现:SeqList.h文件//SeqList.h 声明类SeqList,文件名为SeqList.h#ifndef SeqList_H#define SeqList_Hconst int MaxSize=100; //100只是示例性的数据,可以根据实际问题具体定义te原创 2013-03-11 21:10:29 · 1565 阅读 · 1 评论 -
栈的链接存储结构--链栈 图解和代码实现
栈的链接存储结构--链栈 链栈的图片:LinkStack.h//LinkStack.h#ifndef LINKSTACK_H#define LINKSTACK_Htemplate struct Node{ T data; Node *next; //此处也可以省略};template class LinkStack原创 2013-03-11 22:50:58 · 5529 阅读 · 0 评论 -
队列的顺序存储结构——循环队列 图解和代码实现
队列的顺序存储结构——循环队列循环队列的长度为(rear-front+QueueSize)%QueueSize队空的条件: front=rear队满的条件是: (rear+1)%QueueSize=front 图片详解: CirQueue.h //CirQueue.h#ifndef CIRQUEUE_H#define CIRQUEUE原创 2013-03-11 23:07:24 · 15773 阅读 · 0 评论 -
线性表之单链表 图解和代码实现
线性表的链接存储结构---单链表图解: LinkList.h文件 //LinkList.h 声明类LinkList#ifndef LinkList_H#define LinkList_Htemplate struct Node{ T data; Node *next; //此处也可以省略};原创 2013-03-11 21:28:42 · 5627 阅读 · 0 评论 -
队列的链接存储结构——链队列 图解和代码实现
队列的链接存储结构——链队列 图解: LinkQueue.h//LinkQueue.h#ifndef LINKQUEUE_H#define LINKQUEUE_Htemplate struct Node{ T data; Node *next; //此处也可以省略};template class L原创 2013-03-12 12:02:49 · 8359 阅读 · 0 评论 -
栈的顺序存储结构——顺序栈 图解和代码实现
栈的顺序存储结构称为顺序栈 先看下顺序栈的图片: SeqStack.h//SeqStack.h#ifndef SEQSTACK_H#define SEQSTACK_Hconst int StackSize=10; //10只是示例性的数据,可以根据实际问题具体定义template //定义模板类SeqStackclass Se原创 2013-03-11 21:59:54 · 9131 阅读 · 0 评论 -
查找技术之树表 图解和代码实现
查找技术可从以下几个方面去讨论:第一: 线性表的查找技术第二:树表的查找技术第三:散列表的查找技术 下面来讨论树表的查找技术。 基本概念 二叉排序树(Binary Sort Tree)又称二叉查找树。 它或者是一棵空树;或者是具有下列性质的二叉树: (1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值; (2)若右子树不空,则右子树原创 2013-03-13 00:15:35 · 2632 阅读 · 0 评论 -
红黑树
红黑树编辑红黑树是一种自平衡二叉查找树,是在计算机科学中用到的一种数据结构,典型的用途是实现关联数组。它是在1972年由Rudolf Bayer发明的,他称之为"对称二叉B树",它现代的名字是在 Leo J. Guibas 和 Robert Sedgewick 于1978年写的一篇论文中获得的。它是复杂的,但它的操作有着良好的最坏情况运行时间,并且在实践中是转载 2014-03-21 12:25:44 · 1851 阅读 · 0 评论