- 博客(11)
- 资源 (3)
- 收藏
- 关注
原创 AsyncTask 代码赏析
转载请标明出处 0.背景 最近在写Android的应用,免不了要写一些网络交互的东西。一提到网络,肯定是需要用线程了,本文的目的是在于讨论如何合理的使用线程。如果读者您还不知道如何在android里面实现一个runnable接口,如何启动一个线程,如何进行线程更新界面,那么本文可能不太适合您。如果您也在研究线程,想对其一探究竟,那么本文抛砖引玉,希望能给您带来帮助。 1.那么问题来了 线程
2015-02-02 00:39:16 497
原创 二叉查找树
二叉查找树 一句话说清楚: 左边的都比定点小,右边的都比顶点大 想要找大于某个顶点的最小的值,以此为顶点,查右孩子,以右孩子为顶点,连续查找左孩子,直到空,即可。 增加节点,删除节点,查找节点,查找前序,后续。 下面附上我自己实现的代码。 #include "stdafx.h" #include using namespace std; class Node {
2014-02-19 18:08:54 431
原创 哈希表
一句话说清楚哈希表: 1.哈希表就是通过结对存储值的方式 2.hash更像是一种现实生活中的字典,通过某种hash值查到一个大概的范围,再在那个范围内进行遍历 3.hash表既然是通过key算出来存储位置,那么一定是涉及到key是不是唯一的问题,如果做到唯一的话,整个存储表一定很大,如果不唯一,必然会产生碰撞的问题。 4.如果碰撞,两个不同的key算出来的hash值一样,那么两个hash对
2014-02-18 14:47:32 352
原创 基本数据结构
基本数据结构包括 栈,链表,树。 栈和链表基本每天都在用。 下面说说树。 我们可以用二叉树表示 1)二叉的分支 2)多叉的分支 具体的表示方法为, 1)分为左孩子,右孩子两种 2)分为左孩子,右兄弟,兄弟全部指向父节点。 这两种方式可以表示1)2)两种。
2014-02-18 09:30:12 325
转载 基数排序----非比较型排序
testBS() { int a[] = {2,343,342,1,123,43,4343,433,687,654,3}; int *a_p = a; //计算数组长度 int size = sizeof(a)/sizeof(int); //基数排序 bucketSort3( a_p , size ); //打印排序后结果 int i ; for(i = 0 ; i < size ; i++ )
2014-02-17 17:44:03 438
原创 计数排序---非比较型排序
#include "stdafx.h" #include using namespace std; void Sort(int *p,int length) { int count[1000]; for(int i=0;i<1000;i++) { count[i]=0; } for(int i=0;i<length;i++) { count[p[i]]++; } in
2014-02-17 17:06:36 413
原创 快速排序
一句话说清楚快速排序: 1以数组最后一个值作为比较对象,大于他的放在左边,小于他的放在右边 具体来说: (1)定义一个分界游标,定义一个比较游标 (2)比较游标大于最后一个值的时候,比较游标直接向右移动一位 比较游标小于等于最后一个值的时候,分界游标的值和最后一个比较游标的值互换,分界游标加1 (3)重复以上步骤,直到最后,将末尾位和游标位互换。 2.将最后的数放在上个步骤中左右边界
2014-02-17 14:37:46 396
原创 堆排序
一句话说清楚堆排序:基本上算是二叉树,只不过是用数组来存储,用数组下表来索引的。以position*2+1,position*2+2来决定叶子节点1.假设已有的堆是正确的,那么有一个值是放在了不该放的位置,则将这个值应该移植到合适的地方2.从堆的队尾开始进行排序,这样可以保证已有的堆是正确的3.堆排序就是不停的找到其中的最大或者最小值(堆顶),进行排序。 #include "stdafx.h"
2014-02-17 11:00:35 378
原创 分治法合并排序
分治法是递归的设计方法,理解成一回事好了。 一句话说清思路: 1.将两个已经排好序的数组进行合并,合并的时候也是按大小进行合并 2.将需要排序的数组进行拆分,分成左右两个数组,之后进行排序,然后进行合并 3.递推的停止条件为分开的数组只有一个数了。则不分左右。 #include "stdafx.h" #include using namespace std; void Show(i
2014-02-14 15:25:39 527
原创 插入排序
#include "stdafx.h" #include"iostream" using namespace std; //////////////////////////////////////////////////////////////////////////插入排序 void InsertSort(int *arrayIn,int length) { for(int i=1;i<len
2014-02-14 14:23:07 354
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人