
C/C++
文章平均质量分 73
qinzhiguo003
走遍世界的背包客,工匠之心的工程师.
欢迎技术会友, W-X: qinzhiguo003
现居:新加坡
展开
-
Thinking in Insert Sort(插入排序)
今天重新开始阅读《算法导论》,之前虽然读过一遍,但是不是非常的深入,这是一个新的开始,希望在新的一次算法旅程中,收获更多心得!首先我想说一下我对 插入排序 的理解,我对这个算法的分析与理解,总是在大脑中结合着衣服扑克牌,在算法的步骤中,实时滴更随着每一步操作,当需要排序或者调原创 2011-09-29 20:44:48 · 566 阅读 · 0 评论 -
求最大子序列和
#include#include#include"random_n.h"#define MAX_NUM 100/**Function:the most powerful method to solve the problem**Huge:T = O(N)**Author:Qinzhiguo**Date:2012-1-30 */int Ma原创 2012-04-12 11:50:42 · 734 阅读 · 0 评论 -
Change BST To List
今天看到一个有趣的算法,然后自己动手写来了一下。要求把二叉查找树BineraySortTree转化成链表List,并且在这过程中不是用辅助的存储空间,只是变化一下指针。熄灯后写了差不多1个小时,总是有段错误。。。查找半天才发现吧是没有给指针初始化,桑不起啊。。。。。OK,下面是详细的代码,测试过,可以运行。#include#include/*****************原创 2012-04-12 10:24:50 · 695 阅读 · 0 评论 -
BubbleSort(冒泡排序)
#include #include int BubbleSortFun(int v[],int n){ int i,j,tmp; for(i=0;i { for(j=0;j { if(v[j]>v[j+1]) {原创 2012-03-17 16:58:45 · 574 阅读 · 0 评论 -
InsertSortFun
int InsertSortFun(int v[],int n){ int i,j,tmp; for(i=1;i { tmp = v[i]; for(j=i;j>0 && v[j-1]> tmp ;j--) { v[j]=v[j-1]; }原创 2012-03-16 10:57:50 · 414 阅读 · 0 评论 -
ShellSortFun
int ShellSortFun(int v[],int n){ int step,i,j,tmp; for(step= n/2; step >= 1;step/=2) { for(i=step;i { tmp=v[i]; for(j=i-step; j>=0原创 2012-03-16 10:58:32 · 420 阅读 · 0 评论 -
ASCII 对照表
Bin Dec Hex 缩写/字符 解释 0000 0000 0 00 NUL (null) 空字符 0000 0001 1原创 2011-11-29 14:10:00 · 889 阅读 · 2 评论 -
C语言之random_n
之前写算法排序时有些数据总是手工输入,多少有些不方便,而且在小数据量输入时还可以接受,但是当数据量上升到K级后就显得庞杂。而且要保证之前输入的数据没有太多重复或者不重复这就更是考验我们的记忆力拉。所有我写拉一个产生N个无序整数的程序,此程序可以产生N个数,且在0-N 之间,并且各不相同。具体代码如下:#include#include#include#define MAX_N原创 2011-10-24 15:43:29 · 4796 阅读 · 1 评论 -
C语言之random_n-续
之前写拉一个random_n的算法实现,虽然简单易懂,但是算法的效率相对来说不算很高,节省拉空间,只用到拉一个数组实现。这个random_n的实现用到拉两个数组,子函数中的数组在函数栈销毁时释放空间。最好和最坏运行时间都是O(N )。主要时利用拉空间换时间。具体的代码实现如下:#include#include#define MAX_NUM 10void random_n原创 2011-10-24 16:23:17 · 983 阅读 · 0 评论 -
分治法排序 Thinking in MergeSort
今天小玩了一会,嘻嘻,的该写点东西了,下午吃饭前复习了一下分治法排序,这个算法是主要思想是分组和排序,然后重新合并排序完成的分组。主要代码实现如下,最初写的运行后,风波诡谲,纠结在排序结果有点诡异,快抓狂了,突然发现,原来是下表的递归访问上存在一个错误,Oh,My LADYG原创 2011-10-06 17:35:00 · 576 阅读 · 0 评论 -
快速排序 Thinking in QuickSort
快速排序1.大致的介绍: 快速排序(QuickSort)是一种有效的排序算法。虽然算法在最坏的情况下运行时间为O(n^2),但由于平均运行时间为O(nlogn),并且在内存使用、程序实现复杂性上表现优秀,尤其是对快速排序算法进行随机化的可能,使得快速排序在一般情况下是最原创 2011-10-07 13:29:54 · 826 阅读 · 1 评论 -
图算法在连连看上的应用
数字化和布局算法 首先,我们知道每种棋子有 4 个,我们可以先按顺序把每种棋子排好,然后再随机取其中两个棋子交换一下,多次交换后,棋子就是乱的了。参考下面两图,图中用 4 种颜色表示 4 种棋子: (1)初始排布 (2)多次随机交换两个棋子后 实际上程序内部是原创 2012-05-08 18:09:45 · 688 阅读 · 0 评论