算法
刘信坚的博客
少说话,多做事
展开
-
JAVA实现快速排序
package com.lxj.alg; public class QuickSorted { public static void main(String[] args) { int [] array = {545,654,2,-11,24,745,58,35,64,75,253,35}; //int [] array = {10,9,8,7,6,5,4,3,2,...原创 2018-07-26 21:57:21 · 457 阅读 · 0 评论 -
归并排序
归并排序其实是采用的是分治算法,也就是分而治之,比如一个数组: {13,4,5,2,65,6},首先将这个数组分成{13,4,5},{2,65,6} ,然后继续分解{13,4} {5},{2,65},{6},最后{13},{4},{5},{2},{65},{6} 递归分解多个数组后就开始比较合并,首先是13跟4比较,再合并{4,13},然后合并的就是{4,5,13},接着{2,65},{2,6...原创 2018-09-11 01:06:50 · 425 阅读 · 0 评论 -
剑指Offer-二叉搜索树的后序遍历序列
最近一直在复习一些算法及数据结构方面的东西,就找了一个适合找工作笔试的题目,在剑指Offer上刷了几道题目,发现对复习知识点还是很有用的,推荐要找工作的伙伴去剑指Offer刷题。 题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 看到这道题,给出了二叉排序树(bst)的后...原创 2018-09-05 19:59:36 · 303 阅读 · 0 评论 -
剑指Offer-数组中的逆序对(归并排序应用)
最近一直在复习一些算法及数据结构方面的东西,就找了一个适合找工作笔试的题目,在剑指Offer上刷了几道题目,发现对复习知识点还是很有用的,推荐要找工作的伙伴去剑指Offer刷题。 题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007 ...原创 2018-09-11 12:11:51 · 262 阅读 · 0 评论 -
剑指Offer-连续子数组的最大和
最近一直在复习一些算法及数据结构方面的东西,就找了一个适合找工作笔试的题目,在剑指Offer上刷了几道题目,发现对复习知识点还是很有用的,推荐要找工作的伙伴去剑指Offer刷题。 题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否...原创 2018-09-03 00:08:50 · 245 阅读 · 0 评论 -
剑指Offer-把数组排成最小的数
最近一直在复习一些算法及数据结构方面的东西,就找了一个适合找工作笔试的题目,在剑指Offer上刷了几道题目,发现对复习知识点还是很有用的,做到重建二叉树这块。递归传值出了点问题,debug半小时才找出错误,所有还是写篇博客记录一下。也推荐要找工作的伙伴去剑指Offer刷题。 题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。...原创 2018-09-02 23:54:04 · 197 阅读 · 0 评论 -
剑指Offer-顺时针打印矩阵
最近一直在复习一些算法及数据结构方面的东西,就找了一个适合找工作笔试的题目,在剑指Offer上刷了几道题目,发现对复习知识点还是很有用的,推荐要找工作的伙伴去剑指Offer刷题。 题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打...原创 2018-09-04 23:49:24 · 255 阅读 · 0 评论 -
剑指Offer-矩形覆盖
最近一直在复习一些算法及数据结构方面的东西,就找了一个适合找工作笔试的题目,在剑指Offer上刷了几道题目,发现对复习知识点还是很有用的,做到重建二叉树这块。递归传值出了点问题,debug半小时才找出错误,所有还是写篇博客记录一下。也推荐要找工作的伙伴去剑指Offer刷题。 题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一...原创 2018-09-01 22:19:31 · 236 阅读 · 0 评论 -
剑指Offer-跳台阶
最近一直在复习一些算法及数据结构方面的东西,就找了一个适合找工作笔试的题目,在剑指Offer上刷了几道题目,发现对复习知识点还是很有用的,做到重建二叉树这块。递归传值出了点问题,debug半小时才找出错误,所有还是写篇博客记录一下。也推荐要找工作的伙伴去剑指Offer刷题。 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先...原创 2018-09-01 20:05:40 · 183 阅读 · 0 评论 -
剑指Offer-用两个栈实现队列
最近一直在复习一些算法及数据结构方面的东西,就找了一个适合找工作笔试的题目,在剑指Offer上刷了几道题目,发现对复习知识点还是很有用的,做到重建二叉树这块。递归传值出了点问题,debug半小时才找出错误,所有还是写篇博客记录一下。也推荐要找工作的伙伴去剑指Offer刷题。 题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 i...原创 2018-09-01 19:50:28 · 229 阅读 · 0 评论 -
剑指Offer-重建二叉树
最近一直在复习一些算法及数据结构方面的东西,就找了一个适合找工作笔试的题目,在剑指Offer上刷了几道题目,发现对复习知识点还是很有用的,做到重建二叉树这块。递归传值出了点问题,debug半小时才找出错误,所有还是写篇博客记录一下。也推荐要找工作的伙伴去剑指Offer刷题。 题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历...原创 2018-09-01 19:07:26 · 325 阅读 · 0 评论 -
剑指Offer-数值的正数次方
最近一直在复习一些算法及数据结构方面的东西,就找了一个适合找工作笔试的题目,在剑指Offer上刷了几道题目,发现对复习知识点还是很有用的,推荐要找工作的伙伴去剑指Offer刷题。 题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 这是一道整数快速幂的题目,根据二进制的进位来进行乘法运算,大大减...原创 2018-09-04 09:20:52 · 204 阅读 · 0 评论 -
二叉树按层遍历打印
二叉树按层进行遍历,例如: ① ② ③ ④ ⑤ ⑥ 进行按层遍历的话打印就是: 1 2 3 4 5 6 思路: 用一个current来表示当前指针,用nextLastRight来表示最右节点的指针,例如,current一开始指向1,而下一行的nextLastRight指针指向子节点的最右...原创 2018-10-02 19:44:14 · 561 阅读 · 0 评论