2018年7月27日

摘要: 主要就是判断二叉树深度进行改造。判断条件为左树为平衡树,右树为平衡树,并且左树的高度和右树的高度插不超过-1;public class IsAVL { public static class Node{ private Node left; private Node right; private i 阅读全文
posted @ 2018-07-27 21:24 刘文涛123 阅读(419) 评论(0) 推荐(0) 编辑

2018年7月26日

摘要: 丑数,真丑!一个数的因子仅仅包括2,3,5的数称为丑数。public class uglyNumber { //判断一个数是否为丑数 public boolean isUglyNumber(int number){ while (number%2==0){ number = number/2; } 阅读全文
posted @ 2018-07-26 08:45 刘文涛123 阅读(1176) 评论(0) 推荐(0) 编辑

2018年7月25日

摘要: 【题目】 给定一个整型矩阵matrix,请按照转圈的方式打印它。 例如: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 打印结果为:1,2,3,4,8,12,16,15,14,13,9, 5,6,7,11, 10 【要求】 额外空间复杂度为O(1)。 public c 阅读全文
posted @ 2018-07-25 12:45 刘文涛123 阅读(104) 评论(0) 推荐(0) 编辑

2018年7月24日

摘要: 数组实现循环队列public class ArrayQueue { public Integer arr[]; public Integer start; //删除时start指针向前走一步。 public Integer end; //插入时end指针向前走一步。 public int size; 阅读全文
posted @ 2018-07-24 07:55 刘文涛123 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 用数组实现栈public class ArrayStack { Integer arr[]; Integer size ; public ArrayStack(int initsize){ //对数组进行初始化,即对栈进行初始化 if(initsize<0) throw new IllegalArg 阅读全文
posted @ 2018-07-24 07:48 刘文涛123 阅读(86) 评论(0) 推荐(0) 编辑

2018年7月23日

摘要: 一个矩阵中只有0和1两种值,每个位置都可以和自己的上、下、左、右四个位置相连,如果有一片1连在一起,这个部分叫做一个岛,求一个矩阵中有多少个岛?举例:0 0 1 0 1 01 1 1 0 1 01 0 0 1 0 00 0 0 0 0 0这个矩阵中有三个岛。 思路:1,从头到尾遍历,如果发现此位置等 阅读全文
posted @ 2018-07-23 08:15 刘文涛123 阅读(141) 评论(0) 推荐(0) 编辑

2018年7月22日

摘要: 本文适用于对堆排序部分理解的同学,主要体现的是代码的简洁. /*算法思想(以大顶堆为例): 1.将长度为n的待排序的数组进行堆有序化构造成一个大顶堆 2.将根节点与尾节点交换并输出此时的尾节点 3.将剩余的n -1个节点重新进行堆有序化 4.重复步骤2,步骤3直至构造成一个有序序列*/ //堆排序p 阅读全文
posted @ 2018-07-22 14:24 刘文涛123 阅读(246) 评论(0) 推荐(0) 编辑

2018年4月11日

摘要: 快速排序,首先借用啊哈算法中的理论 方法其实很简单:分别从初始序列“6 1 2 7 9 3 4 5 10 8”两端开始“探测”。先从右往左找一个小于6的数,再从左往右找一个大于6的数,然后交换他们。这里可以用两个变量i和j,分别指向序列最左边和最右边。我们为这两个变量起个好听的名字“哨兵i”和“哨兵 阅读全文
posted @ 2018-04-11 18:51 刘文涛123 阅读(189) 评论(1) 推荐(1) 编辑

导航