
code
文章平均质量分 68
calvin_zcx
这个作者很懒,什么都没留下…
展开
-
插入排序+二分查找
void insertionSortBinary(TYPE A[], int n){ int i, j, l, r, mid; TYPE key; for(i = 1; i<n; ++i) { key = A[i]; l = 0; r = i-1; while(l <= r) { mi原创 2012-04-25 18:10:49 · 460 阅读 · 0 评论 -
归并排序
#define MAX 9999999void mergeMAX(TYPE A[], int p, int q, int r){ int n1 = q-p+1, i, j, k; int n2 = r-q; TYPE L[N/2 + 2], R[N/2+2]; for(i = 0; i < n1; ++i) L[i] = A[p+i]; L[i] = MAX;原创 2012-04-25 00:26:01 · 351 阅读 · 0 评论 -
希尔shell排序
#include #include #include typedef int TYPE;#define N 100000void exchange(TYPE A[], int a, int b){TYPE tmp = A[a]; A[a] = A[b]; A[b] = tmp;}void selectionSort(TYPE A[], int n){ int i, j,原创 2012-04-23 17:13:48 · 415 阅读 · 0 评论 -
选择排序
typedef int TYPE;#define N 100void exchange(TYPE A[], int a, int b){TYPE tmp = A[a]; A[a] = A[b]; A[b] = tmp;}void selectionSort(TYPE A[], int n){ int i, j, minIndex; for(i = 0; i < n-1;原创 2012-04-23 16:00:35 · 359 阅读 · 0 评论 -
插入排序
//// main.c// FirstProgram//// Created by Calvin Zang on 12-4-17.// Copyright (c) 2012年 SYSU. All rights reserved.//#include #include #include typedef int TYPE;#define N 100void inse原创 2012-04-23 00:35:25 · 390 阅读 · 0 评论 -
最大堆与优先队列
//// main.c// FirstProgram//// Created by Calvin Zang on 12-4-17.// Copyright (c) 2012年 SYSU. All rights reserved.//#include //for test#include //#include //rand//#define N 1000#def原创 2012-04-22 22:57:15 · 464 阅读 · 0 评论 -
删除字符串多余空格
void deleteBlank(char str[]){ int len = strlen(str), i, j, p, s, e = len; for(i = 0; i < len; ++i) { if(str[i] != ' ')continue; if(str[i+1] == ' ') p = i+1; for(j原创 2012-04-22 22:55:05 · 658 阅读 · 0 评论 -
计算两个字符串的距离(相似度)
#define min(a,b) (((a)<(b)) ? (a) : (b))int stringDistance(char strA[], int pABegin, int pAEnd, char strB[], int pBBegin, int pBEnd){ if(pABegin > pAEnd){ if(pBBegin > pBEnd) return 0;原创 2012-05-07 20:19:05 · 803 阅读 · 0 评论 -
冒泡排序bubbleSort
#include #include #include typedef int TYPE;#define N 100void exchange(TYPE A[], int i, int j){TYPE tmp = A[i]; A[i]=A[j];A[j]=tmp;}void bubbleSort(TYPE A[], int n){ int i, j; for(i =原创 2012-05-05 21:45:20 · 450 阅读 · 0 评论 -
合并两个排好序的链表
typedef struct Nodetag{TYPE val; struct Nodetag * next;} Node;typedef Node* pNode;Node* combine(Node* p1, Node* p2){ Node *head, *p; if(p1 == NULL) return p2; if(p2 == NULL) return p1;原创 2012-04-22 22:53:09 · 969 阅读 · 1 评论 -
链表归并排序
#include #include #include #include //#include //using namespace std;typedef int TYPE;typedef struct NODETAG{ struct NODETAG* pNext; TYPE value;}NODE;NODE* build(TYPE A[], int n)原创 2012-05-08 11:49:51 · 658 阅读 · 0 评论