数据结构
文章平均质量分 51
peng_peng123
这个作者很懒,什么都没留下…
展开
-
用JAVA编写汉诺塔程序
汉诺塔问题:三根坚柱和一组中间有洞能在柱子上滑动的盘子,每个盘子有不同的直径。初始时,所有的盘子按照大小依次堆放在一个柱子上,最大的盘子在最下面。目标:将所有的盘子从初始的第一根柱子移动到第三根柱子上,可以借用额外的第二根柱子作为临时存放盘子的地方,但是移动过程中必须遵守以下规则:1.一次只能移动一个盘子2.不能把大盘子压在小盘子上面3.除去移动的瞬间,所有盘子必须在柱子上。思原创 2016-01-10 11:32:00 · 2700 阅读 · 0 评论 -
二叉树的存储和构造例子
二叉树通常采用链式存储结构,每个结点至少要有两条链分别连接左孩子和右孩子。其中,二叉链表采用两条链连接孩子,每个结点有三个域:data存储数据,left,right分别指向左孩子和右孩子。下面是用JAVA写的一个例子,实现了二叉链表结构和遍历方法。/* * 二叉树的二叉链表结点 */public class BinaryNode { public E data; public Bin原创 2016-03-16 11:04:26 · 450 阅读 · 0 评论 -
JS编写冒泡排序法和二分查找
冒泡排序法和二分查找//冒泡法,升序function sort(arr){ var flag=true; //是否交换位置的标记 for(var i=0;i<arr.length-1&& flag;i++) //有交换时进行下一趟 { flag=false; //假设元素未交换 for(var j=0;j<arr.length-1-i;j++) { if原创 2016-03-29 21:16:37 · 734 阅读 · 0 评论 -
BF回溯算法
/***字符串Brute-Force模式匹配算法*设有两个串:目标串target和模式串pattern,在目标串中查找与模式串相等的一个字串并确定该子串的位置。*/class BfMethod { public static void main(String[] args) { String target="ablahhfdsjkabc"; String pattern="原创 2016-03-12 19:02:11 · 503 阅读 · 0 评论 -
青蛙跳阶1小练习
package cn.itcast.offer1;/* * 一只青蛙一次可以跳上1层台阶,也可以跳2层,求该青蛙跳上一个N层的台阶共有多少种跳法 */思路分析:假设青蛙最后一次跳台阶,如果跳1层,则前n-1层有f(n-1)种方法;如果跳2层,则前n-2层有f(n-2)种方法,因此n层台阶共有f(n-1)+f(n-2)=f(n)种跳法;public class OfferQi原创 2016-02-28 11:57:58 · 604 阅读 · 0 评论 -
字符串小练习
//判断标识符,标识符是由字母开头的字母数字创,字母包含下划线_和符号$,此定义包含关键字。//本例判断指定字符串是否符合标识符的语法。class Identifier { public static void main(String[] args) { String str="_abckdj99$0d"; System.out.println("str是否是标识符:"+isI原创 2016-03-13 21:44:27 · 299 阅读 · 0 评论 -
KMP算法
//KMP算法实现字符串的匹配(查找)class KmpDemo{ public static void main(String[] args) { String target="abcabcbcfhgefja"; String pattern="bcf"; int index=indexOf(target,pattern,0); System.out.println(原创 2016-03-14 10:58:31 · 271 阅读 · 0 评论