摘要: 第一篇:基础 第一章:算法概念 1.1:算法 1.2:算法分析 1.3:算法设计 1.4:小结 阅读全文
posted @ 2012-03-10 22:38 会飞的猫· 阅读(249) 评论(0) 推荐(0)
摘要: 依赖倒置的原则定义: 1.高层模块不应该依赖于低层模块,两者都依赖与抽象。 2.抽象不应该依赖于细节,细节应该依赖于抽象。 低层次结构: 每一个逻辑的实现都是由原子逻辑组成的,不可分割的原子模块就是低层次结构。 高层次结构: 原子逻辑的再组装就是高层次结构。最简洁的定义就是“面向接口编程”。依赖倒置的原则的本质就是通过抽象(或接口)使各个类或模块实现彼此独立,不相互影响,实现模块的松耦合。依赖倒置的三种实现方法:1.通过构造函数传递依赖对象比如在构造函数中的需要传递的参数是抽象类或接口的方式实现。2.通过Setter方式传递依赖对象像在我们设置的setXXX方法中的参数为抽象类或接口... 阅读全文
posted @ 2012-03-16 16:48 会飞的猫· 阅读(230) 评论(0) 推荐(0)
摘要: 对于访问压力较高的网站,如淘宝、校园网、开心网等,都会面对海量用户的并发访问情景,如何有效的存储数据,为用户提供快速的访问体验,同时还需要具备良好的扩容能力,成为数据存储方案选择的关键。例如SNS网站的人人网,据称其PV(Page View,页面浏览量,或称点击量)访问量为亿级。如此大规模的访问量,传统的将数据存储于一个数据库的集中式存储方式,很难提供良好的数据层支持。根据分而治之的思想,可以对数据库进行纵向或横向的拆分,即Database Sharding。根据拆分的不同方法,可以分为纵向拆分和横向拆分。纵向拆分:即根据不同的应用,分别设置不同数据应用数据库,如视频类数据、图片类数据、新闻数 阅读全文
posted @ 2012-03-15 00:02 会飞的猫· 阅读(246) 评论(0) 推荐(0)
摘要: 合并排序中插入排序在短数组上的应用 虽然合并排序的最坏情况运行时间为Θ(n lg n),插入排序的为Θ(n2),但在n较小时,后者更快。因而,在合并排序中,当子问题已足够小时,可以应用插入排序。 (瀑布汗.。.。.。.抱歉了,提的问题太多了,好多都回答不出来,等全部答完在续吧....) 阅读全文
posted @ 2012-03-14 23:48 会飞的猫· 阅读(125) 评论(0) 推荐(0)
摘要: 回顾:算法的设计有很多方法。插入排序使用的是增量方法:在排好的字数组A[1...J-1]后,将元素A[J]插入,形成排好序的字数组A[1...J]。 1.3.1 分治法: 在本节中,我们要介绍另一种设计策略,叫做“分治法”。很多算法在结构上是递归的:为了解决一个问题,算法要一次或多次的递归调用其自身来解决相关的子问题。这些算法通常采用分支策略:讲原问题分成n个较小规模而结构与原问题相似的子问题;递归的解这些子问题,然后合并其结果就得到原问题的解。 分治模式在每一层递归上都有三个步骤: 1.分解:讲原问题分解成一系列子问题;将n个元素分成各含n/2个元素的子序列;2.解决:递归的解各个子问题。. 阅读全文
posted @ 2012-03-13 23:43 会飞的猫· 阅读(288) 评论(0) 推荐(0)
摘要: 算法分析 概念: 算法分析即指对一个算法所需的资源进行预测。一般来说,资源是指计算时间,有时也指存储器、通信带宽或逻辑门等。给定一个问题后,通过分析几种候选算法,可以从中选出一个最有效的算法。 插入排序算法的分析 INSERTION-SORT过程的时间开销与输入有关:排序1000个数的时间比排序三个数的时间要长。即使排序两个相同长度的输入序列的时间也有可能不同,这取决于它们已排序的程度。算法所需的时间是与输入规模同步增长的。 最坏情况和平均情况分析: 算法的最坏情况运行时间是在任何输入下的运行时间的上界,这就保证算法的运行时间不会比它更长。(目前还不太理解) 平均情况的时间性态常常与最坏情况. 阅读全文
posted @ 2012-03-11 00:58 会飞的猫· 阅读(214) 评论(0) 推荐(0)
摘要: 算法导论:第一章 1.1算法 排序算法的定义: 算法的形式定义可以看作是任意一个良定义(该定义是可行的)的计算过程,它以一个或一些值作为输入,并产生一个或一组值作为输出。因而,一个算法也就是一系列的将输入转换为输出的计算步骤。 第一个事例 插入排序: 这种算法对少量的元素进行排序较为有效。插入的排序的伪代码用过程INSERTION_SORT来表示。 注解 伪代码: 伪代码不考虑软件工程中的一些问题,如,为了更简洁的表达某个算法的实质,在伪代码中常常忽略数据抽象、模块性、出错处理等问题。 伪代码的使用约定:C#代码public static void insertion_sor... 阅读全文
posted @ 2012-03-10 23:02 会飞的猫· 阅读(208) 评论(0) 推荐(0)
作者: 会飞的猫· 现在在学习.net 希望在博客园学到并分享更多的知识,交到更多的朋友。 如发现什么不足或错误,希望大家可以通过 xccdron1@163.com 和我反馈,我会虚心学习并改正。