自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Copertino的专栏

c程序员

  • 博客(13)
  • 资源 (3)
  • 收藏
  • 关注

原创 最小生成树之prime算法

在这里我就不摆最小生成树的定义了,对于最小生成树,我们必须注意一下两点:1》尽可能选取权值小的边,但不能构成回路。2》选取合适的n-1条边将联通图的n个顶点连接起来。算法简单描述1).输入:一个带权连通图,其中顶点集合为V,边集合为E;2).初始化:Vnew = {x},其中x为集合V中的任一节点(起始点),Enew = {},为空;3).重复下列操

2015-08-20 15:01:04 542

原创 几种查找算法的比较

1.堆的意义在于最快的找到最大最小值,在堆中插入一个值,取走最大值或最小值重新构建堆结构,其时间复杂度为O(log N) ,而其它方法至少为O(N)。堆在实际中用途不在于排序,堆的应用:a.在于调度算法中,比如优先级调度,每次取优先级最高的.b.可以采用堆构造优先级队列,优化dijstra算法。c.对于海量数据,可以求数据的前n大或前n小。2.哈希表主要是一O(1)时间内对查找

2015-08-17 12:28:27 1469

原创 二叉排序树的一个简单实现

首先说什么是二叉排序树:   1》如果根节点的左孩子不为NULL,则左孩子的权值小于根节点。   2》如果根节点的右孩子不为NULL,则左孩子的权值大于根节点。   3》对于根节点的左右子树,递归的满足1和2两条性质    二叉树排序树为了动态的查找和插入,保证在O(height时间)。但是二叉树可能出现最坏情况,使得树的深度几乎与数据规模一致。下面给出一个具体的实现代码。

2015-08-17 12:09:08 392

原创 dijstra(迪杰斯特拉)算法的简单实现

迪杰斯特拉算法的步骤:(所有符号出现在下面的源代码中)(1)初始时,S只包含源点,即S={v},v的距离dist[v]为0。U包含除v外的其他顶点,U中顶点u距离dis[u]为边上的权值(若v与u有边) )或∞(若u不是v的出边邻接点即没有边)。(2)从U中选取一个距离v(dist[k])最小的顶点k,把k,加入S中(该选定的距离就是v到k的最短路径长度)。(3)以k为新考虑的

2015-08-16 19:27:57 574

原创 堆排序(非递归版)-- c语言实现

堆,是是在逻辑上模仿完全二叉树的一维数组,(假设数组开始下标为0)某父节点 i 其左右孩子可以表示为2*i+1(左)和2*i+2(右).堆排序的思想是每次从堆顶拿出一个元素(最大或最小取决于是大顶堆还是小顶堆)放入已排序数组,然后将堆最有一个元素插入堆顶,这样将引起堆的不平衡,然后重新调整堆至平衡,重复做下去。注意,每次堆拿出堆顶元素的大小都会减小1.#include #in

2015-08-15 09:39:48 658 1

原创 快速排序--c语言实现

快速排序的思想是对待排序数组,在数组中选取一个合适枢纽节点,然后遍历数组中其它元素,把比枢纽元素小的放在该元素的左边,把比其大的放在该元素的右边,然后递归的对该枢纽元素左右两边的数组用同样的方法排序。复杂度:排序方法平均时间复杂度最坏时间复杂度最好时间复杂度空间复杂度稳定性复杂性快速排序O(nlgn)O(n^2)O(nlg

2015-08-14 17:36:03 485

原创 归并排序--c语言实现

归并排序算法c语言实现。

2015-08-14 16:50:35 848

原创 链表逆序(无需申请额外空间c语言版)

#include #include /********说明:不需要额外申请空间对链表进行逆序算法**************//*链表节点*/typedef struct Node{ int data; struct Node *next;}node;/*链表控制节点*/typedef struct { node *head; int cnt;

2014-11-18 23:16:49 682

原创 选择排序--c语言实现

/*****************************选择排序********************************//*排序思想:*//*从第一个元素开始,把元素和其它元素比较,最终找出最小的排在第一位,然后找出第二小的排在第二位,循环即可*/#include #define ARRSIZE 10void print_array(int *);//打印数组void

2014-11-17 23:47:31 442

原创 冒泡排序--c语言实现

/*****************************冒泡排序********************************//*排序思想:*//* 1.对于一个长度为n的数组,进行n-1次循环*//* 2.第一次次循环中,先将1和2元素比较,如果元素1比元素2大,则交换其位置,接着比较元素2和元素3,以此类推,最终最大的元素排在最后一位*//* 3.接着第二次循环,要排序的元素个

2014-11-17 00:18:16 440

原创 直接插入排序算法--c语言实现

/*********************直接插入排序********************/#include #define ARRSIZE 10void sort(int *,int);void print_array(int *);int main(){ int array[ARRSIZE]={1,3,4,5,8,7,9,0,2,6}; sort(

2014-11-15 01:06:31 687 2

原创 redhat linux 6 gcc编译器出错

今天在用gcc编译c程序时候竟然莫名其

2014-09-09 19:53:36 471

原创 大整数乘法c语言版

#include#includechar fuhao='+';/*数据节点*/typedef struct node{ int data; struct node * next;}_node;/*链表控制结构*/typedef struct{ _node *head; _node *tail ; int ndcnt;}_nd

2014-07-13 22:58:04 845

mac pdf神器

mac pdf神器,支持很多功能,免费版,mac pdf神器,支持很多功能,免费版mac pdf神器,支持很多功能,免费版mac pdf神器,支持很多功能,免费版mac pdf神器,支持很多功能,免费版

2018-04-12

编译原理龙书第二版

编译原理龙书第二版中文版 编译原理届最权威的书籍。

2015-04-22

自增加程序c代码

数字自加,改斯柯达附加进撒翻第三届弗兰克撒旦积分第三方建立

2014-10-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除