上一页 1 2 3 4 5 6 7 8 9 ··· 58 下一页
  2014年4月22日
摘要: 如果在一个类中想要执行另一个类中的方法可以使用通知1.创建一个通知对象:使用notificationWithName:object: 或者 notificationWithName:object:userInfo: NSNotification* notification = [NSNotifica... 阅读全文
posted @ 2014-04-22 21:49 猿人谷 阅读(31578) 评论(1) 推荐(4) 编辑
  2014年4月18日
摘要: 来源:http://iaiai.iteye.com/blog/1493956Storyboard)是一个能够节省你很多设计手机App界面时间的新特性,下面,为了简明的说明Storyboard的效果,我贴上本教程所完成的Storyboard的截图:现在,你就可以清楚的看到这个应用究竟是干些什么的,也可... 阅读全文
posted @ 2014-04-18 16:58 猿人谷 阅读(37648) 评论(2) 推荐(7) 编辑
  2014年4月15日
摘要: 以后慢慢启用个人博客:http://www.yuanrengu.com 当应用程序需要访问网络时,它首先应该检查设备的网络状态,确认设备的网络环境及连接情况,并针对这些情况提醒用户做出相应的处理。最好能监听设备的网络状态的改变,当设备网络状态连接、断开时,程序也应该有相应的处理。 工欲善其事必先利器 阅读全文
posted @ 2014-04-15 18:31 猿人谷 阅读(8857) 评论(2) 推荐(14) 编辑
  2014年4月14日
摘要: 学习iOS开发已经有一段时日了,之前一直没有系统的对iOS开发的相关知识进行归纳总结,导致很多知识点云里雾里在脑子里形不成iOS开发的思想,现将自己在学习过程中遇到的一些知识进行总结,希望能对iOS初学者能有一定的帮助。最初学iOS的时候苦于没有大神指点,全靠自己一点点摸索,确实走了很多弯路,不希望 阅读全文
posted @ 2014-04-14 19:24 猿人谷 阅读(10730) 评论(2) 推荐(3) 编辑
摘要: NSUserDefaults类提供了一个与默认系统进行交互的编程接口。NSUserDefaults对象是用来保存,恢复应用程序相关的偏好设置,配置数据等等。默认系统允许应用程序自定义它的行为去迎合用户的喜好。你可以在程序运行的时候从用户默认的数据库中读取程序的设置。同时NSUserDefaults的... 阅读全文
posted @ 2014-04-14 10:14 猿人谷 阅读(34889) 评论(0) 推荐(1) 编辑
  2014年4月12日
摘要: 1. TCP连接当网络通信时采用TCP协议时,在真正的读写操作之前,server与client之间必须建立一个连接,当读写操作完成后,双方不再需要这个连接 时它们可以释放这个连接,连接的建立是需要三次握手的,而释放则需要4次握手,所以说每个连接的建立都是需要资源消耗和时间消耗的经典的三次握手示意图:经典的四次握手关闭图:2. TCP短连接我们模拟一下TCP短连接的情况,client向server发起连接请求,server接到请求,然后双方建立连接。client向server 发送消息,server回应client,然后一次读写就完成了,这时候双方任何一个都可以发起close操作,不过一般都是c 阅读全文
posted @ 2014-04-12 16:45 猿人谷 阅读(4332) 评论(0) 推荐(0) 编辑
摘要: 来源:http://www.cppblog.com/mythit/archive/2009/04/19/80492.aspx在看下面这篇文章之前,先介绍几个理论知识,有助于理解A*算法。启发式搜索:启发式搜索就是在状态空间中的搜索对每一个搜索的位置进行评估,得到最好的位置,再从这个位置进行搜索直到目标。这样可以省略大量无畏的搜索路径,提到了效率。在启发式搜索中,对位置的估价是十分重要的。采用了不同的估价可以有不同的效果。估价函数:从当前节点移动到目标节点的预估费用;这个估计就是启发式的。在寻路问题和迷宫问题中,我们通常用曼哈顿(manhattan)估价函数(下文有介绍)预估费用。A*算法与BF 阅读全文
posted @ 2014-04-12 16:02 猿人谷 阅读(1061) 评论(0) 推荐(0) 编辑
  2014年4月6日
摘要: 实现快速排序算法的关键在于先在数组中选择一个数字,接下来把数组中的数字分为两部分,比选择的数字小的数字移到数组的左边,比选择的数字大的数字移到数组的右边。这个函数可以如下实现:int Partition(int data[], int length, int start, int end){ if(data == NULL || length = length) throw new std::exception("Invalid Parameters"); int index = RandomInRange(start, end); swap(&data... 阅读全文
posted @ 2014-04-06 19:16 猿人谷 阅读(649) 评论(0) 推荐(0) 编辑
摘要: 转自:http://blog.csdn.net/caryaliu/article/details/8280647从以下几个方面来比较排序算法:1. 算法的时间和空间复杂度2. 排序的稳定性3. 算法结构的复杂度4. 参加排序的数据规模排序的稳定性:稳定排序方法: 插入排序、冒泡排序、二路归并排序、基数排序是稳定排序算法;不稳定排序方法: 选择排序、谢尔排序、快速排序、堆积排序是不稳定排序算法。算法复杂度比较:各种内排序算法的时间、空间复杂度排序方法平均时间最坏情况辅助空间插入排序O(n*n)O(n*n)O(1)谢尔排序O(n*log2n)O(n*log2n)O(1)泡排序O(n*n)O(n*n 阅读全文
posted @ 2014-04-06 17:11 猿人谷 阅读(2385) 评论(0) 推荐(0) 编辑
  2014年4月4日
摘要: 题目:在8×8的国际象棋上摆放八个皇后,使其不能相互攻击,即任意两个皇后不得处在同一行、同一列或者同一对角斜线上。下图中的每个黑色格子表示一个皇后,这就是一种符合条件的摆放方法。请求出总共有多少种摆法。这就是有名的八皇后问题。解决这个问题通常需要用递归,而递归对编程能力的要求比较高。因此有不少面试官青睐这个题目,用来考察应聘者的分析复杂问题的能力以及编程的能力。由于八个皇后的任意两个不能处在同一行,那么这肯定是每一个皇后占据一行。于是我们可以定义一个数组ColumnIndex[8],数组中第i个数字表示位于第i行的皇后的列号。先把ColumnIndex的八个数字分别用0-7初始化,接 阅读全文
posted @ 2014-04-04 19:26 猿人谷 阅读(555) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 58 下一页