算法
七生七世
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
排序之四-----归并排序(合并排序)
void mergeSort(int a[],int s,int r){ if(r >s){ int mid = (s+r)/2; mergeSort(a,s,mid); mergeSort(a,mid+1,r); int p=s,q =mid+1; int tmp=p; int b[r-s+1]; for(int i=0;i<r+1-s;i++){ if(p>原创 2014-07-31 22:59:46 · 466 阅读 · 0 评论 -
排序之三----快速排序
int partation(int a[],int p, int r){ int q = p+1; int tmp = a[p]; int t=0; for(int i=q;i<r+1;i++){ if(a[i]<tmp){ t=a[q]; a[q++]=a[i]; a[i]=t; } } t =a[p]; a[p]=a[q-1]; a[q-1]=t;原创 2014-07-31 22:56:36 · 411 阅读 · 0 评论 -
排序之二-----选择排序
void selectSort(int a[],int size){ int index = 0; int tmp = 0; for(int i=0;i<size;i++){ int min = a[i]; index = i; for(int j=i+1;j<size;j++){ if(a[j] < min){ min = a[j]; index = j;原创 2014-07-31 22:58:15 · 406 阅读 · 0 评论 -
排序之一---冒泡排序
冒泡排序:直接上代码原创 2014-07-31 22:57:01 · 410 阅读 · 0 评论 -
排序之五----堆排序
int left(int i){ return 2*i+1;}int right(int i){ return 2*i+2;}void max_heapify(int a[],int length,int max){ int l=left(max); int r=right(max); int largest = max; if(l<=length && a[max] <a[l原创 2014-07-31 22:58:42 · 377 阅读 · 0 评论 -
代码优化规则
1.空间换时间规则1.扩展数据原创 2014-08-19 23:53:38 · 419 阅读 · 0 评论 -
算法学习
第一阶段:练经典常用算法,下面的每个算法给我打上十到二十遍,同时自己精简代码, 因为太常用,所以要练到写时不用想,10-15分钟内打完,甚至关掉显示器都可以把程序打 出来. 1.最短路(Floyd、Dijstra,BellmanFord) 2.最小生成树(先写个prim,kruscal要用并查集,不好写) 3.大数(高精度)加减乘除 4.二分查找. (代码可在五行以内)转载 2014-08-24 08:05:46 · 460 阅读 · 0 评论 -
leetcode 150道题目的原题
1:https://oj.leetcode.com/problems/reverse-words-in-a-string/ name:Reverse Words in a String date:2014-03-05 rate:14.0% Reverse Words in a String Total Accepted: 34174 Total Submissions: 244原创 2014-09-22 21:22:43 · 3593 阅读 · 0 评论
分享