码迷,mamicode.com
首页 >  
搜索关键字:算法-数据结构    ( 494个结果
约瑟夫问题求解算法的设计与实现
一、实验内容 约瑟夫(Joseph)问题的一种描述是:编号为1,2,…,n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数。报m的人出列,将他的密码作为新的m值,从他在顺时针方向上的下一个人开始重新从1报数,如此下去,直至所有人全部出列为止。试设计一个程序求出出列顺序。 二、实验目的 掌握...
分类:编程语言   时间:2015-06-15 11:24:15    阅读次数:136
基于双链表 实现Java Queue队列
除了可以通过一维数组,单链表实现queue队列,还可以通过双链表实现queue队列。在基于NLNode类实现双向链表的时候,为了使编程更加简洁,通常我们都要在最前端和最后端各设置一个哑元节点( Dummy node )。这两个节点分别称作头节点( Header node )和尾节点( Trailer node) ㈠,起哨兵( Sentinel)的作用。也就是说,它们并不存储任何实质的数据对象,头(尾...
分类:编程语言   时间:2015-06-15 09:29:21    阅读次数:154
数据结构与算法——冒泡排序
什么是冒泡排序?   冒泡排序是一种交换排序,所谓交换,就是将相邻元素两两比较,如果反序则进行交换从而使元素有序。之所以叫冒泡排序是因为,元素是从最后开始进行两两比较,将小的元素放到最上面的位置,看上去就跟气泡网上冒一样。 代码实现: #include #define MAXSIZE 10 using namespace std; struct SqList { int r[MAX...
分类:编程语言   时间:2015-06-14 21:30:27    阅读次数:155
内部排序算法比较
一、题目描述 通过随机数据比较各排序算法的关键字比较次数和关键字移动次数,以 及执行时间,取得直观感受。 二、设计要求一、需求分析 实现各排序算法,分别进行以下各组比较,并进行总结。 一、各算法在不同规模下的比较。 1)比较范围:直接插入排序、冒泡法排序、简单选择排序、快速排序1(自己实现)、快速排序2(调用STL)、归并排序。 2)比较指标:a)关键字操作次数(比较次数和移动次数...
分类:编程语言   时间:2015-06-14 13:52:25    阅读次数:341
函数模板
在程序的世界中,有一句被奉为经典的话:算法 + 数据结构 = 程序这篇文章将会介绍一下 “算法” 的发展过程。即为什么会发展到 “函数模板” 这一步。同时,我们也可以了解到函数式编程的四个技巧。内联函数早期的算法是严格地使用内联代码来实现的,内联我们知道就是代码直接编写在程序中,那么程序员开始厌倦编...
分类:其他好文   时间:2015-06-12 11:21:40    阅读次数:110
数据结构与算法分析-排序
作者:xiabodan 出处:http://blog.csdn.net/xiabodan  排序算法(Sorting Algorithm)是计算机算法的一个组成部分。也是程序=算法+数据结构中的一部分(算法)。 实验平台:raspberry 2 B + Ubuntu Mate  插入排序 //插入排序 //stable //O(N^2) comparisons and swaps...
分类:编程语言   时间:2015-06-04 15:49:33    阅读次数:151
LeetCode【6】. ZigZag Conversion --思路图解与java实现
ZigZag Conversion 一、题目如下:          The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for b...
分类:编程语言   时间:2015-06-04 01:05:10    阅读次数:207
LeetCode【5】. Longest Palindromic Substring --java实现
Java Longest Palindromic Substring(最长回文字符串)...
分类:编程语言   时间:2015-06-02 00:27:16    阅读次数:326
桶排序
桶排序假设输入数据服从均匀分布,平均情况下它的时间代价为O(n);它的工作原理就是将数组分到有限数量的桶子里,每个桶子在使用其他排序算法或者递归的方式使用桶排序。 假如要对大小为[1…1000]范围内的n个数进行排序,可以把桶的大小设为10,那么就会产生100个桶。把输入的n个元素依次放到与之对应的桶中,然后对每个桶在进行排序,这样我们依次输出每个桶中的数据就得到了一个排序好的序列。将元素通过恰...
分类:编程语言   时间:2015-05-26 21:30:14    阅读次数:155
剑指Offer-->从上向下打印二叉树(层序遍历 + 详解)
这道题目难度一般,重要的是想到以队列作为辅助来解决。 分析:因为按层打印的顺序决定了先打印的应该为根结点。为了接下来能够打印值为 8 的结点的两个子结点,应该在遍历到该结点时把值为 6 和 10 的两个结点保存到一个容器里,此时容器中含有 6 和 10 两个结点。按照从左到右的要求,先取出值为 6 的结点。打印出值 6 之后分别把 5 和 7 两个左右子结点放入容器 ,此时容器中的结点有三个...
分类:其他好文   时间:2015-05-23 14:20:56    阅读次数:165
494条   上一页 1 ... 29 30 31 32 33 ... 50 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!