[1.Foun] Algorithm and Data Structure
文章平均质量分 83
林学森
《机器学习观止——核心原理与实践》
《深入理解Android内核设计思想》
展开
-
排序算法小析
<br />目录: <br /> <br />1 ,冒泡排序 (bubble sort) 1 <br />2 , 插入排序 (insertion sort) 2 <br />3 ,选择排序 (selection sort) 2 <br />4 ,合并排序 (merge sort) 3 <br />5 ,快速排序 (quick sort) 4 <br />6 ,线性时间排序 — 计数排序 (counting sort) 7 <br />7 ,线性时间排序 — 基数排序 -- 7 <br />8 ,线性排序转载 2010-11-07 13:49:00 · 1025 阅读 · 0 评论 -
排序算法的比较
<br />学习开发至今,《算法导论》这部经典却一直没有看过。虽然大多常见算法都在其他书籍(如数据结构)学过,但还是想重新把它看一遍。今天终于收到amazon寄来的厚厚的一本,开始看。。。<br /> <br />书共分八部分,其中最后一部分附录,是数学基础。我是先看这一部分的,浏览了一遍。<br /> <br />基本上内容有:<br /> <br />1。高数中的级数,常见的数列(级数)的求和。 --- 基本上用数学归级法很容易证明<br />2。离散数学中的:集合,关系以及函数,图,树,二叉树概念。<转载 2010-11-07 15:45:00 · 809 阅读 · 0 评论 -
算法与数据结构总结
<br />数据结构有四种:集合,线性,树,图<br />算法:<br />1. 排序<br />2.原创 2010-11-07 13:12:00 · 923 阅读 · 0 评论 -
算法基元(to be continued)
个人觉得,算法是输入->输出的一种解决方法。这意味算法问题本身需要先建模为有输入,有输出的样子。另外,无论什么算法,都是基元算法的组合或变形。 1. 电梯调度 二级排序。一级为方向,二级为楼层。 2. 最大数字子串:摒弃负数的贪婪扩展 3. 树的变相遍历,递归 4. 穷举法,需要保证穷举是朝不断靠近结果的方向 5. 关键字的互相替换 for,while可以用递归,if,else可以用switch case,三目?:。另外,循环是让相同代码执行N遍,所以用new object+全局变量的方原创 2011-02-27 18:12:00 · 1377 阅读 · 0 评论 -
好代码的标准
1. 可读性 结构清楚 有统一的命名规则 有适当的注释 2. 可扩展性 在增加程序功能时,可以较轻易实现,不需要很大改动。 3. 可维护性 可维护性是指由他人接手或自己后期维护时的工作量。因此这与可读性有一定关系。而与可护展性也有关系。在解决问题的同时,有可能需要新的补丁,一定的扩展性可以缩小差距。 4. 执行效率问题 实现同原创 2011-03-14 13:54:00 · 1643 阅读 · 0 评论 -
判断链表是否有环
<br />struct list{ <br />int data; <br />struct list *next; <br />}; <br />int has_circle(struct list *head) <br />{ <br />struct list *cur1 = head; <br />int pos1 = 0; <br />while(cur1){ <br />struct list *cur2 = head; <br />int pos2 = 0; <br /转载 2011-03-15 23:05:00 · 1109 阅读 · 0 评论 -
关于生产者-消费者问题
<br />生产者-消费者(producer-consumer)问题,也称作有界缓冲区(bounded-buffer)问题,两个进程共享一个公共的固定大小的缓冲区。其中一个是生产者,用于将消息放入缓冲区;另外一个是消费者,用于从缓冲区中取出消息。问题出现在当缓冲区已经满了,而此时生产者还想向其中放入一个新的数据项的情形,其解决方法是让生产者此时进行休眠,等待消费者从缓冲区中取走了一个或者多个数据后再去唤醒它。同样地,当缓冲区已经空了,而消费者还想去取消息,此时也可以让消费者进行休眠,等待生产者放入一个或者多转载 2011-03-17 23:57:00 · 1225 阅读 · 0 评论 -
海量数据处理问题与方法汇总
1、有1亿个浮点数,请找出其中对大的10000个。提示:假设每个浮点数占4个字节,1亿个浮点数就要站到相当大的空间,因此不能一次将全部读入内存进行排序。 可以发现如果一次读入那么机器的内存肯定是受不了的,因此我们只有想其他方法解决,解决方式为了高效还是得符合一定的该概率解决,结果并不一定准确,但是应该可以作对大部分的数据。 (1.我们可以把1亿个浮点数分组为100W个一组,这样就分为了100个组,第一次在每个组中找出最大的1W个数,第二次查询的时候就是100W个数中再找原创 2011-03-22 19:14:00 · 1582 阅读 · 0 评论 -
排序算法汇总(选择排序 ,直接插入排序,冒泡排序,希尔排序,快速排序...)
=============================================== 作者:rerli 时间:2003-12-15 目的:重温经典排序思想,并用C语言指针实现排序算法 ================================================ */ /* ============================================================================= 相关知识介绍(所有定义只为帮助读者理解相关概念,并非转载 2011-03-24 18:08:00 · 5082 阅读 · 0 评论