码迷,mamicode.com
首页 >  
搜索关键字:复杂    ( 50633个结果
计数排序
计数排序:它的优势在于在对一定范围内的整数排序时,它的复杂度为Ο(n+k)(其中k是整数的范围),快于任何比较排序算法 实现原理: 首先将k范围内的数都C[]数组设0,然后遍历一边数组A[],对应的C[A[i]]++, 然后再将A[]数组向高位递加,观察发现每个不同的数字对应的C[]值都是该数字在排序后数组的位置,然后填充重复的数字 代码: #include #include ...
分类:其他好文   时间:2014-05-07 08:50:13    阅读次数:254
使用NSURLProtocol实现UIWebView的离线缓存的简单实现
文章介绍了使用NSURLProtocol实现UIWebView的离线缓存的简单实现,你可以在github上下载这个demo的代码。 无论是“MKNetworkKit”还是”AFCache”实现的缓存都过于复杂,而他想要的是一个简单机制: 1、你使用了UIWebView指向来显示一个有图像嵌入的网站。 2、当你的设备online时,你有正常的缓存算法。 3、当你的设备offline时...
分类:Web程序   时间:2014-05-07 07:38:57    阅读次数:375
leetcode第一刷_ Palindrome Partitioning II
这道题还挺复杂的,回来看了好一会儿才想起当时怎么想的。。上道题刚说不要打表,这道题就用了打表。。 总的思路是这样的,从后面往前面打表,最后一个位置的最小分割一定是0,那往前呢,如果当前考虑的位置是start,并且substr(s, i)是回文的,那么如果已知i+1开始的分割次数,那么start这个位置的分割应该就是start原来的和i+1开始的分割次数加1之间的最小值。DP的思想,很直接。 但...
分类:其他好文   时间:2014-05-07 07:37:39    阅读次数:307
leetcode第一刷_Word Ladder
这道题思路不难,本质就是BFS嘛,从一个单词开始,他的下一层是所有可以一步变到,且从来没变到过得那些string。问题是怎样确定这些可以变到的string呢?有两个条件,一,只能通过上一层的string变化一个数字得到,二,变化之后单词必须在字典中。注意是变化一个字母得到,而不是编辑距离是1,要么就复杂了,情况多了好多好多。 我最开始的思路是建个map,保存所有从开始单词能变化到得单词及这些单词...
分类:其他好文   时间:2014-05-07 06:18:46    阅读次数:276
C++表达式求值(利用数据结构栈)
唉,刚刚用C++又重新写了一个较完善的表达式求值程序,最后精简后程序还不到100行,这不经让我 想到了大一上学期刚学c语言时自己费了好大的劲,写了几百行而且功能还不是很齐全(当时还不能计算有括号的表 达式)的简单计算器程序。刚把两个程序对比了一下,感触还是挺深的,同时也再一次体现了数据结构在程序设计 中的重要性。 以前的那个程序有漏洞而且逻辑复杂,所以就不提了,只说说现在改进后的程序,其思...
分类:编程语言   时间:2014-05-07 06:06:16    阅读次数:441
wikioi-1748 瑰丽华尔兹 -单调队列优化DP
根据题意,很明显可以推出DP方程。 假如只考虑向左的方向: dp[t][i][j]:  第t个时间段末滑行到i,j最长滑行的距离。 dp[t][i][j]=dp[t-1][i][1..k]+(j-k)=dp[t-1][i][1..k]-k+j(k 最终时间复杂度为O(n*m*k) #include #include #include #include #include using nam...
分类:其他好文   时间:2014-05-07 04:49:13    阅读次数:363
coacoapods中的podfile介绍;如何指定版本号(内容来自官方英文blog)
一个简单的podfile: pod 'AFNetworking', '~> 1.0' 版本号可以是1.0,可以是1.1,1.9,但必须小于2 -个更简单的podfile: pod 'AFNetworking', '1.0' // 版本号指定为1.0 一个更更简单的podfile: pod 'AFNetworking', // 不指定版本号,任何版本都可以一个复杂的po...
分类:其他好文   时间:2014-05-07 04:32:12    阅读次数:384
MySQL与OLAP:分析型SQL查询最佳实践探索
搞点多维分析,糙快猛的解决方案就是使用ROLAP(关系型OLAP)了。数据经维度建模后存储在MySQL,ROLAP引擎(比如开源的Mondrian)负责将OLAP请求转化为SQL语句提交给数据库。OLAP计算分析功能导致MySQL需要进行较多复杂SQL查询,性能调优必不可少,本文总结了一些实用原则。 OLAP特点 OLAP的典型应用包括复杂动态报表,需要支持钻取(上卷和下钻)、切片、切块和旋转...
分类:数据库   时间:2014-05-07 03:19:42    阅读次数:580
经典排序算法
数值算法:解方程、微积分、数值分析   多用在工程设计 非数值算法:搜索、排序、拆分、合并   多用在系统   一、线性搜索 1.算法 1.1从头开始,依次将每一个元素与查找目标进行比较 1.2或者找到目标,或者找不到目标 2.评估 2.1平均时间复杂度:O(N),线性时间 2.2对数据没有任何规律性要求   穷举法   二、二分搜索(折半搜索) 1.算法 1.1假设表中...
分类:其他好文   时间:2014-05-06 15:36:44    阅读次数:260
Unix C++(boost) 线程同步和线程组
虽然多线程的使用可以提高应用程序的性能,但也增加了复杂性。 如果使用线程在同一时间执行几个函数,访问共享资源时必须相应地同步。 一旦应用达到了一定规模,这涉及相当一些工作。 所以要学习Boost.Thread提供同步线程的类。...
分类:编程语言   时间:2014-05-06 14:42:40    阅读次数:329
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!