博客专栏  >  编程语言   >  算法编程从入门到精通

算法编程从入门到精通

追求进步系列,每天三个算法,从简单到复杂,不断地提高编程技术,题目来源剑指offer,以及程序猿面试指南等算法题目。

关注
4 已关注
20篇博文
  • 【追究进步】二叉树的镜像

    题目描述 操作给定的二叉树,将其变换为源二叉树的镜像。  输入描述: 二叉树的镜像定义:源二叉树 8 / \ 6 10 ...

    2016-03-25 10:04
    237
  • 【追求进步】树的子结构

    题目描述 输入两颗二叉树A,B,判断B是不是A的子结构。 在线代码: /** public class TreeNode { int val = 0; TreeNod...

    2016-03-24 11:58
    222
  • 【追求进步】合并两个排序的链表

    题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 这个题目的解法两种(递归方法和非递归方法): 在线代码: /* publ...

    2016-03-24 10:59
    194
  • 【追求进步】反转链表

    前几天做了从尾到头打印链表元素的题目,以下链接是栈的方式输出。 http://blog.csdn.net/quentain/article/details/50906099 本题还有递归的方法,补...

    2016-03-24 09:47
    238
  • 【追求进步】孩子们的游戏(圆圈中最后剩下的数)【百度阿里面试常考算法之一】

    之前在做ACM的时候发现了这个著名的约瑟夫环问题,并且自己自己思考,理解之后发表了这篇博客: http://blog.csdn.net/quentain/article/details/500815...

    2016-03-23 20:02
    536
  • 【追求进步】第一个只出现一次的字符位置

    这个题目普遍的想法即就是for循环然后比较,复杂度是o(n) 题目描述 在一个字符串(1 在线代码: import java.util.HashMap; public cl...

    2016-03-23 18:57
    227
  • 【追求进步】和为S的两个数字

    20、21、22三天无更新每日提高算法题,今天追上这两天准备面试的经典四个题目。 题目描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字...

    2016-03-23 16:09
    260
  • 【追求进步】调整数组顺序使奇数位于偶数前面

    题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 这道...

    2016-03-19 11:59
    225
  • 【追求进步】数值的整数次方

    题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 起初看起来简单,但是实际做起来考虑的很多,还不是那么容易,没有优化...

    2016-03-19 11:27
    179
  • 【追求进步】二进制中1的个数

    题目描述 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 在线代码: public class Solution { public int NumberOf...

    2016-03-19 10:31
    214
  • 【追求进步】矩形覆盖

    题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 还是递归,一早上的递归,还是斐波那契,一早上都是...

    2016-03-18 12:20
    293
  • 【追求进步】变态跳台阶

    题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 变态跳台阶是上一个题的拓展。 详细解法: 关于...

    2016-03-18 11:48
    218
  • 【追求进步】跳台阶

    题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 总之同样也是斐波那契数列 首先我们考虑最简单的情况。如果只有1个台阶,那显然只有一种跳法。如...

    2016-03-18 11:23
    213
  • 【追求进步】斐波那契数列

    题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。 总之不能用递归! 代码: public class Solution { pu...

    2016-03-18 10:47
    262
  • 【追求进步】旋转数组的最小数字

    【加油加油,每天进步三个算法!希望自己能坚持下去····】 题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减序列的一个旋转,输出旋转数组的最小元素...

    2016-03-17 13:01
    208
  • 【追求进步】用两个栈实现队列

    题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 在线代码: import java.util.Stack; public class ...

    2016-03-17 11:48
    185
  • 【追求进步】重建二叉树

    题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4...

    2016-03-17 11:16
    164
  • 【追求进步】从尾到头打印链表

    题目描述 输入一个链表,从尾到头打印链表每个节点的值。  输入描述: 输入为链表的表头 输出描述: 输出为需要打印的“新链表”的表头 代码如下: /** * public ...

    2016-03-16 16:20
    229
  • 【追求进步】替换空格

    题目描述 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 代码实现: pu...

    2016-03-16 13:59
    182
  • 【算法】二维数组中的查找

    题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。  输入描述: a...

    2016-03-16 11:23
    295

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部