
算法导论
文章平均质量分 65
浪迹天涯_
这个作者很懒,什么都没留下…
展开
-
凸壳算法
凸壳算法在模式识别、图像处理、图形学和人工智能方面有着广泛的应用,很多问题都可以归纳为凸壳问题求解。可能我以后用到的比较少,就当是普及算法了,以下简单介绍凸壳串行算法。关于凸壳的串行算法,可以说有好多种,有时间复杂度O(n^2)的,也有O(nlogn)的,下面依次介绍几种算法:1、卷包裹法,时间复杂度为O(n^2)由Chand 和 Kapur 于1970年提出,基本原创 2015-03-25 09:25:49 · 14943 阅读 · 0 评论 -
插入排序算法
插入排序的基本思想是每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子文件中的适当位置,直到全部记录插入完成为止。常见的插入排序有插入排序(Insertion Sort),希尔排序(Shell Sort),二叉查找树排序(Tree Sort),图书馆排序(Library Sort),Patience排序(Patience Sort)。下面介绍前两种:原创 2015-03-28 09:37:49 · 703 阅读 · 0 评论 -
马周游问题
在2013年的阿里巴巴笔试中遇到过马周游问题,做一下相关学习笔记以备以后查看。马周游题目如下:马周游(马跳日)问题:在一个 8*8 的棋盘上(如下图)一匹马从任意位置开始,恰好走过棋盘中的每一格(每个格子有且只能走一次),并且最后还可以回到起点位置。这个问题其实可以进行推广:即棋盘大小不一定是 8*8 ,只要棋盘大小 M * N 满足:① M >=6 ;N>= 6; ② M原创 2015-05-07 15:05:57 · 4101 阅读 · 0 评论 -
两个栈实现队列 两个队列实现栈
为说明思想,假设队列、栈都很大,不会出现满的情况。1. 两个栈实现队列复制代码//前提已知:struct Stack{ int top; //栈顶指针 int stacksize;//栈的大小 int *s; //栈底指针};void InitStack(Stack *s);void Push(Stac转载 2015-06-04 21:32:47 · 452 阅读 · 0 评论 -
算法导论中的名词解释
卫星数据:在算法导论里,指的是一条纪录(一个对象中)中除了关键字key以外的其他数据。 例如在排序算法中,参与排序的数据称做关键字key,而该对象附带的其他数据则称做卫星数据。在排序的过程中,我们只考虑关键字key的大小。 形象一点说,其他数据可以看作是关键字key的卫星,反映了其他数据与key的依属关系。 未完待续。原创 2015-06-03 09:14:12 · 1766 阅读 · 0 评论