sophia_hxw

人生有三恨,一恨鲫鱼有刺,二恨海棠无香,三恨红楼未完!----------张爱玲
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  algorithms

Many problems in algorithms!
摘要:#1,个人理解 网上查了很多资料,都说sobel算子是用来检测边缘的,分别给了两个方向上的卷积核,然后说明做法,就说这就是sobel算子。对于我个人来说,还有很多不明白的地方,所以理清下思路。 #2,边缘、边界和sobel算子 这个可以自己去google或者百度找定义,边缘和边界不一样,两者没有必然 阅读全文

posted @ 2016-11-22 10:35 sophia_hxw 阅读(8224) 评论(0) 推荐(2)

摘要:#1,定理 在一棵高度为h的二叉搜索树上,动态集合上的操作SEARCH、MINIMUM、MAXIMUM、SUCCESSOR和PREDECESSOR可以在O(h)时间内完成。 #2,伪代码 分别是搜索,迭代形式的搜索,取最小值,取最大值,找后继,找前驱。 1 //x is an element of 阅读全文

posted @ 2016-07-29 16:36 sophia_hxw 阅读(140) 评论(0) 推荐(0)

摘要:#1,定义 二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序 阅读全文

posted @ 2016-07-28 16:14 sophia_hxw 阅读(203) 评论(0) 推荐(0)

摘要:#1,是什么? 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。 给定表M,存在函数f(key),对任意给定的关键字 阅读全文

posted @ 2016-07-28 09:12 sophia_hxw 阅读(173) 评论(0) 推荐(0)

摘要:#1,指针和对象的实现 如果所用的语言或者环境不支持指针和对象,那我们该怎么用数组来将其转化呢?实质上可以将这个问题的本质转化为数组和链表这两种数据结构的转换,准确来说,是将链表表示的数据用数组表示。 方式一:转化为多维数组 方式二:转化为一元组 #2,有根树的表示 有根数也可以转化为多元组或者一元 阅读全文

posted @ 2016-07-27 17:25 sophia_hxw 阅读(448) 评论(0) 推荐(0)

摘要:#1,栈(stack) 定义[来自百度]:栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作 阅读全文

posted @ 2016-07-27 14:08 sophia_hxw 阅读(281) 评论(0) 推荐(0)

摘要:#1,概念 有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到一种新的排序方法——插入排序法,插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O 阅读全文

posted @ 2016-07-14 16:22 sophia_hxw 阅读(228) 评论(0) 推荐(0)

摘要:#1,选择排序简介 选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法(比如序列[5, 5, 3]第一次就将第一个[5]与[3]交换, 阅读全文

posted @ 2016-07-09 13:24 sophia_hxw 阅读(169) 评论(0) 推荐(0)

摘要:#1,简介 冒泡排序是一种比较基础、简单的排序算法,它的思想就是:key值较大的会像泡泡一样被你挑选出来向后或者向前移,这具体取决于你想要的结果数组是大序排列还是小序排列。 操作:对数组(或者其他存储结构)依次遍历,比较相邻两个元素,若与你设定的顺序相反,则交换位置,然后对数组要进行len-1次这样 阅读全文

posted @ 2016-07-08 08:33 sophia_hxw 阅读(156) 评论(0) 推荐(0)

摘要:&1 思想和时间复杂度 分治法思想(Divide and Conquer),这是算法导论里面讲的第一个算法思想,很经典也很实用。 时间复杂度分析,最好是O(n),最差是O(n2),平均性能是O(nlog(n))。 &2 算法 #1. 在待排数列中(n个数)选择一个基准数(理论上可以任意); #2. 阅读全文

posted @ 2016-07-07 09:35 sophia_hxw 阅读(188) 评论(0) 推荐(0)