自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 <菜鸟学算法-Dijkstra求最短路径>

#include#define INFINITE 10000int Graph[6][6]={ {0,2,4,0,0,0}, /*建立一个有向图,0表示不通,非零为权值*/ {0,0,5,6,9,0}, {0,0,0,0,7,0}, {0,0,0,0,2,3}, {0,0,0,0,0,4}, {0,0,0,0,0,0} };typedef struct vert

2014-05-22 20:04:33 410

原创 <菜鸟学算法-A排序(选择排序)>

/* ============================================================================ Name : choice_sort.c Author : braveboyny Version : Copyright : Your copyright notice Description

2014-05-21 19:53:08 618

原创 <菜鸟学算法-A排序(shell排序)>

/* ============================================================================ Name : shell_sort.c Author : braveboyny Version : Copyright : Your copyright notice Description

2014-05-21 19:50:58 420

原创 <菜鸟学算法-A排序(计数排序)>

计数排序是一个非基于比较的排序算法,该算法于1954年由 Harold H. Seward 提出。它的优势在于在对一定范围内的整数排序时,它的复杂度为Ο(n+k)(其中k是整数的范围),快于任何比较排序算法。#include#define MAX_NUMBER 6int C[MAX_NUMBER];int counting_sort(int A[],int B[],int n){

2014-05-20 12:56:26 557

原创 <菜鸟学算法-A排序(分治的思想:堆排序)>

堆排序利用了大根堆(或小根堆)堆顶记录的关键字最大(或最小)这一特征,使得在当前无序区中选取最大(或最小)关键字的记录变得简单。(1)用大根堆排序的基本思想① 先将初始文件R[1..n]建成一个大根堆,此堆为初始的无序区② 再将关键字最大的记录R[1](即堆顶)和无序区的最后一个记录R[n]交换,由此得到新的无序区R[1..n-1]和有序区R[n],且满足R[1..n-1]

2014-05-20 11:22:52 641

原创 <菜鸟学算法-A排序(分治的思想:快速排序)>

设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这个过程称为一趟快速排序。值得注意的是,快速排序不是一种稳定的排序算法,也就是说,多个相同的值的相对位置也许会在算法结束时产生变动。一趟快速排序的算法是:1)设置两个变量i、j,排序开始的时候:i=0,j=N-1;

2014-05-20 11:19:29 669

原创 <菜鸟学算法-A排序(冒泡排序)>

冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。所以,如果两个元素相等,我想你是不会再无聊地把他们俩交换一下的;如果两个相等的元素没有相邻,那么即使通过前面的两两交换把两个相邻起来,这时候也不会交换,所以相同元素的前后顺序并没有改变,所以冒泡排序是一种稳定排序算法。#includevoid bubble_sort(int *a,int

2014-05-20 10:37:41 556

原创 <菜鸟学算法-A排序(分治的思想:归并排序)>

#include#include#define INFINITE 65535void merge(int array[],int low,int mid,int high){int n1,n2,i,j,k;n1=mid-low+1;n2=high-mid;int *La=(int *)malloc(sizeof(int)*(n1+1));//将数组分成左右2部分分治

2014-05-19 20:30:18 586

原创 <菜鸟学算法-A排序(插入排序)>

描述:输入:n个数(a

2014-05-19 19:15:28 639

空空如也

空空如也

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

TA关注的人

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