
Algorithm and Data Structure
文章平均质量分 76
lchad
这个作者很懒,什么都没留下…
展开
-
【算法】栈的C语言实现
#include#include#include#include//定义栈的初始分配空间#define STACK_INIT_SIZE 100//栈的分配增量#define STACKINCRENMENT 10typedef struct{ char *top;//栈顶 char *base;//栈底 int stacksize;//当前栈的大小}stack;/原创 2014-12-28 00:06:13 · 642 阅读 · 0 评论 -
【算法】二叉树的递归遍历C语言实现
二叉树是一种极其重要的数据结构,以下是二叉树的结构定义 创建 和递归先序 中序 后序 遍历的代码.#include#includetypedef char ElemType;/*二叉树节点数据结构*/typedef struct node{ ElemType data; struct treenode *lChild; struct treenode *rCh原创 2015-02-07 18:18:30 · 9245 阅读 · 1 评论 -
【算法】希尔排序C语言实现
上一篇文章我们一起学习了直接插入排序,它的原理就是把前i个长度的序列变成有序序列,然后循环迭代,直至整个序列都变为有序的.但是说来说去它还是一个时间复杂度为(n^2)的算法,难道就不能再进一步把时间复杂度降低一阶么?可能有很多同学说快速排序,堆排序,我都会,这些简单的插入排序我都不屑于用.确实,以上几种算法相对于之前的O(n^2)级别的算法真的是弱爆了,效率可能还会差上千万倍,但是我们不妨翻看一下原创 2015-02-06 14:20:13 · 25147 阅读 · 8 评论 -
【算法】简单选择排序C语言实现
上一篇我们谈到了冒泡排序,实现了两个版本的冒泡排序,不知道大家有没有对冒泡排序的特点进行一下总结呢?其实冒泡排序还算是比较暴力的,因为它频繁不断的进行交换,那么这样的话,我们的计算机的计算频率就会很高,不算是很高效,那么我们可不可以找到一种交换次数少一点的方法呢?这就引出了我们接下来要介绍的简单选择排序算法了.简单选择排序的基本思想就是通过N-1次的关键字间的比较,从N - i + 1原创 2015-02-05 23:57:41 · 3636 阅读 · 1 评论 -
【算法】冒泡排序C语言实现
冒泡排序应该是我大学里遇见的第一个排序算法,没记错的话应该还是C语言课上讲指针的时候老师给介绍的,当时因为心思完全没在学习上,还沉浸在高考结束的狂欢状态,想着进了大学就真的可以爱谁谁了,反正我是不要再努力读书了,看到黑板上老师写的什么i,j两层嵌套什么的,就一个感觉,真尼玛蛋疼,快下课吧.到后来直接连课都不去上了,想想当初还是挺二逼的.我的另一位老师又曾经说过,你们啊,上课不听原创 2015-02-05 22:26:22 · 4741 阅读 · 0 评论 -
【算法】直接插入排序C语言实现
不知道大家喜不喜欢打扑克?哈哈,我就挺喜欢的,尤其是三人斗地主,很喜欢.现在我来描述一幅画面看看大家熟不熟悉.我抓牌的习惯是,在抓牌的时候,我要看着我的牌,看看牌的状况,有没有大小鬼,有几个2,有没有长的连,顺便做好基本的排序工作.比如我第一张牌抓的是7,放在手里,第二张牌是J,我把它放在7的后面(对,我默认是左到右升序的的),第三张是10,我把它放在7和J之间,第四张牌还是10,那么原创 2015-02-06 00:44:48 · 3586 阅读 · 3 评论 -
【算法】C语言实现堆排序
直接上代码。#include#includetypedef struct heap_t{ int *arr; //point for an array to store heap value. int heapMaxIndex; //heap element max index number int arrLength; //array length of arr原创 2014-12-27 23:24:27 · 653 阅读 · 0 评论 -
【算法】队列的C语言实现
/****ElemType.h - ElemType的定义*****/ #ifndef ELEMTYPE_H#define ELEMTYPE_H typedef int ElemType; int compare(ElemType x, ElemType y);void visit(ElemType e); #endif /* ELEMTYPE_H *//****原创 2014-12-28 00:25:41 · 954 阅读 · 0 评论 -
【数据结构】C语言实现顺序链表
这是在上数据结构课程时候的练习,贴出来做备忘。#include #include #include #include #include typedef int elemtype;#define TRUE 0#define FALSE 1#define OK 1#define ERROR 0#define INFEASIBLE -1#if(1)typed原创 2014-12-24 22:51:45 · 3047 阅读 · 0 评论