摘要: http://www.cs.usfca.edu/~galles/visualization/HeapSort.htmlvery nice ! 阅读全文
posted @ 2013-03-25 23:44 金建彤 阅读(115) 评论(0) 推荐(0) 编辑
摘要: int arry[]={1,4,9,4,8,2,7,43,3,2}; int acount=sizeof(arry); int aocount=sizeof(arry[0]); int n=(acount/aocount); int k; k=n/2; int t; while(k>0) { for(i=k;i<n;i++) { t=arry[i]; j=i-k; while(j>=0&&t<arry[j]) { arry[j+k]=arry[j]; j=j-k; } arry[j+k]=t; } k/=2; } for (int i=0;i<n; 阅读全文
posted @ 2013-03-25 23:08 金建彤 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 简单选择排序不稳定 时间复杂度为o(n2)void SelectSort(SeqList * _pList){ int nMinIndex; //记录最小数字的下标for(int i=0; i<_pList->nLength-1; i++){ nMinIndex=i;for(int j=i+1; j<_pList->nLength; j++){ if(_pList->data[j]<_pList->data[nMinindex]){ nMinIndex=j;}}int nTemp=0;if(nMinIndex !=i){ nTemp=_pList-&g 阅读全文
posted @ 2013-03-25 22:29 金建彤 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序,它的时间复杂度为O(n^2),虽然不及堆排序、快速排序的O(nlogn,底数为2),但是有两个优点:1.“编程复杂度”很低,很容易写出代码;2.具有稳定性,这里的稳定性是指原序列中相同元素的相对顺序仍然保持到排序后的序列,而堆排序、快速排序均不具有稳定性。不过,一路、二路归并排序、不平衡二叉树排序的速度均比冒泡排序快,且具有稳定性,但速度不及堆排序、快速排序。冒泡排序是经过n-1趟子排序完成的,第i趟子排序从第1个数至第n-i个数,若第i个数比后一个数大(则升序,小则降序)则交换两数实例:void BobbleSort (SeqList* _pList){ bool bExchang 阅读全文
posted @ 2013-03-25 22:16 金建彤 阅读(157) 评论(0) 推荐(0) 编辑
摘要: http://blog.csdn.net/caryaliu/article/details/7475700 阅读全文
posted @ 2013-03-25 21:26 金建彤 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 1.xml解析要解析的xml文件 <?xml version="1.0" encoding="UTF-8"?><Books> <Book ISBN="032188728X"> <title>Programming in Objective-C</title> <author>Stephen G. Kochan</author> <summary>Programming in Objective-C is a concise, careful 阅读全文
posted @ 2013-03-25 21:14 金建彤 阅读(398) 评论(1) 推荐(0) 编辑
摘要: 先看概念详解:http://blog.csdn.net/remote_roamer/article/details/7015826//表格结构 --> NSEntityDescription//数据库中所有表格和他们的联系 -->NSManagedObjectModel//数据库存放方式 --> NSPersistentStoreCoordinator//数据库操作 --> NSManagedObjectContext//查询语句 --> NSFetchRequest//表格的记录 --> NSManagedObject有一个学生类叫Student里面有na 阅读全文
posted @ 2013-03-25 20:30 金建彤 阅读(225) 评论(0) 推荐(0) 编辑
摘要: Ios提供了copy和mutablecopy方法,顾名思义,copy就是复制了一个imutable的对象,而mutablecopy就是复制了一个mutable的对象。以下将举几个例子来说明。 1. 系统的非容器类对象 这里指的是NSString,NSNumber等等一类的对象。 NSString *string = @"origion"; NSString *stringCopy = [string copy]; NSMutableString *stringMCopy = [string mutableCopy]; [stringMCopy appendString:@& 阅读全文
posted @ 2013-03-25 13:06 金建彤 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 线程同步:1,原子操作2,内存屏蔽和volatile变量只确保每次操作都是从内存中获取信息,而不用寄存器内保存的数据OSMemoryBarrier函数,设置内存屏蔽volatile变量线程安全设计技巧:===代码一---有风险的代码 NSLock* arrayLock = [selfGetArrayLock]; NSMutableArray* myArray =GetSharedArray(); idanObject; [arrayLocklock]; anObject = [myArrayobjectAtIndex:0]; [arrayLockunlock]; //在处理doSomet... 阅读全文
posted @ 2013-03-25 10:26 金建彤 阅读(542) 评论(0) 推荐(0) 编辑
摘要: http://blog.csdn.net/fengsh998/article/details/8691823 阅读全文
posted @ 2013-03-25 09:58 金建彤 阅读(136) 评论(0) 推荐(0) 编辑
摘要: http://www.cnblogs.com/limlee/archive/2012/06/21/2547582.html一、KVOKey-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。每次指定的被观察的对象的属性被修改后,KVO自动通知相应的观察者。model中的定义:@interface StockData : NSObject { NSString * stockName; float price;}@end@implementation StockData@endcontroller中使用,记得上一篇怎么说的吗?这里相当于... 阅读全文
posted @ 2013-03-25 00:34 金建彤 阅读(139) 评论(0) 推荐(0) 编辑
摘要: http://www.cocoachina.com/bbs/read.php?tid=751220CGContextRef context = UIGraphicsGetCurrentContext(); 设置上下文1 CGContextMoveToPoint 开始画线2 CGContextAddLineToPoint 画直线4 CGContextAddEllipseInRect 画一椭圆4 CGContextSetLineCap 设置线条终点形状4 CGContextSetLineDash 画虚线4 CGContextAddRect 画一方框4 CGContextStrokeRect 指定矩 阅读全文
posted @ 2013-03-25 00:25 金建彤 阅读(284) 评论(0) 推荐(0) 编辑
摘要: http://www.cnblogs.com/fkdd/archive/2012/03/14/2396284.html1.伪继承 尽管再objtive-C中不提供多继承,但它提供了另外一种解决方案,使对象可以响应在其它类中实现的消息(别的语言中,一般叫方法,两者无差别). 这种解决方案叫做消息转发,它可以使一个类响应另外一个类中实现的消息。 在一般情况下,发送一个无法识别的消息会产生一个运行时的错误,导致应用程序崩溃,但是注意,在崩溃之前,iphone运行时对象为每个对象提供了第二次机会来处理消息。捕捉到一条消息后可以把它重定向到可以响应该消息的对象。 这个功能完全通过消息转发来实现,发送消息 阅读全文
posted @ 2013-03-25 00:19 金建彤 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 虽然ARC引入之后NSAutoReleasePool的使用有了很大变化,但是了解NSAutoReleasePool的机制还是十分必要的,下面主要说一下:一个”Autorelease Pool”实例中“包含”其它各种调用了”autorelease”方法的对象。当它释放时,其中所有被管理对象都会收到”relrease”的消信。注意,同一个对象可以被多次调用”autorelease”方法,并可以放到同一个”Autorelease Pool”中。引入这个自动释放池机制,对象的”autorelease”方法代替”relrease”方法可以延长它的生命周期,直接到当前”Autorelrease Pool” 阅读全文
posted @ 2013-03-25 00:00 金建彤 阅读(594) 评论(0) 推荐(0) 编辑