
我的算法
文章平均质量分 65
我的算法
Java仗剑走天涯
这个作者很懒,什么都没留下…
展开
-
什么是贪心算法?
一、贪心算法基本概念和特征规律“贪心”顾名思义,因此其规律特征就是更加注重当前的状态,贪心法做出的选择是对于当前所处状态的最优选择,它的解决问题的视角是微观的“局部”,而不是从全局宏观的角度思考和看待问题。也就是说,不从整体最优上加以考虑,仅是某种意义上的局部最优解。根据这样的性质,要求贪心法解决的问题是“无后效性”——当前的决策不会影响到后续的决策。因为如果问题前后勾连紧密的话,会造成求解过程十分混乱。贪心算法常常用于组合优化问题,它的求解过程是多步判断的过程。...原创 2021-08-15 15:47:28 · 1172 阅读 · 0 评论 -
【动态规划】不信看完你还不懂动态规划
1.什么是动态规划?维基百科:动态规划(Dynamic programming,简称DP)是一种通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。使用场景:动态规划常常适用于有重叠子问题和最优子结构性质的问题。dynamic programming is a m·· ethod for solving a complex problem by breaking it down into a collection of simpler subproblems.简单来说,动态规划其原创 2021-08-01 19:18:56 · 1286 阅读 · 0 评论 -
【LeetCode每周算法】零钱兑换
题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/coin-change给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回-1 。你可以认为每种硬币的数量是无限的。示例1:输入:coins = [1, 2, 5], amount = 11输出:3解释:11 = 5 + 5 + 1示例...原创 2021-07-29 19:53:54 · 350 阅读 · 0 评论 -
打印杨辉三角--for循环
要求打印7行直角杨辉三角杨辉三角原创 2017-04-30 00:23:28 · 5832 阅读 · 0 评论 -
【LeetCode每周算法】两数相加
题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/add-two-numbers给你两个非空 的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 ...原创 2021-07-23 13:51:01 · 224 阅读 · 1 评论 -
几种排序算法的思想
几种排序算法的思想转载 2017-07-30 12:10:47 · 365 阅读 · 0 评论 -
一遍记住Java常用的八种排序算法与代码实现
一遍记住Java常用的八种排序算法与代码实现转载 2017-07-30 14:05:40 · 444 阅读 · 0 评论 -
Java常用排序算法/程序员必须掌握的8大排序算法
Java常用排序算法/程序员必须掌握的8大排序算法转载 2017-07-30 13:56:55 · 409 阅读 · 0 评论 -
前端面试中常见的算法问题
前端面试算法问题虽说我们很多时候前端很少有机会接触到算法。大多都交互性的操作,然而从各大公司面试来看,算法依旧是考察的一方面。实际上学习数据结构与算法对于工程师去理解和分析问题都是有帮助的。如果将来当我们面对较为复杂的问题,这些基础知识的积累可以帮助我们更好的优化解决思路。下面罗列在前端面试中经常撞见的几个问题吧。原创 2017-05-18 11:23:45 · 814 阅读 · 0 评论 -
算法--360面试:使用递归实现:a0=1,a1=1;a2=a0+a1;a3=a1+a2...以此类推,求a30
算法--360面试:使用递归实现:a0=1,a1=1;a2=a0+a1;a3=a1+a2...以此类推,求a30原创 2017-07-22 18:02:56 · 5752 阅读 · 0 评论 -
算法--中兴面试:输入两个整数 n 和 m,从数列1,2,3.......n 中随意取几个数, 使其和等于 m
输入两个整数 n 和 m,从数列1,2,3…….n 中随意取几个数, 使其和等于 m ,要求将其中所有的可能组合列出来.原创 2017-07-15 09:08:46 · 3895 阅读 · 0 评论 -
算法--生成m个指定范围的不重复随机数的三种方法分析(Java实现)
Q题目如何产生m个在0-N范围内的无重复的随机数(不包含N)原创 2017-06-14 11:59:48 · 11192 阅读 · 2 评论 -
漫画说算法--动态规划算法一(绝对通俗易懂,非常棒)
有一座高度是10级台阶的楼梯,从下往上走,每跨一步只能向上1级或者2级台阶。要求用程序来求出一共有多少种走法。转载 2019-03-22 09:28:35 · 20078 阅读 · 14 评论 -
漫画说算法--动态规划算法二(绝对通俗易懂,非常棒)
漫画说算法--动态规划算法二(绝对通俗易懂,非常棒)转载 2017-06-13 18:57:58 · 19136 阅读 · 16 评论 -
漫画说算法--动态规划算法三(绝对通俗易懂,非常棒)
漫画说算法--动态规划算法一(绝对通俗易懂,非常棒)转载 2017-10-16 19:34:22 · 11279 阅读 · 16 评论 -
算法--06年华为面试:求两个数组的最小差值(Java实现)
Q题目华为06年面试题(要求8分钟完成)原创 2017-06-12 17:21:09 · 8768 阅读 · 0 评论 -
算法--微软面试:整数的二进制表示中1的个数(Java实现)
Q题目整数的二进制表示中1的个数输入一个整数,求该整数的二进制表达中有多少个1。原创 2017-07-01 14:06:32 · 1262 阅读 · 0 评论 -
算法--微软面试:指定数字在数组中出现的次数
Q题目在排序数组中,找出给定数字的出现次数,比如 [1, 2, 2, 2, 3] 中2的出现次数是3次。原创 2017-06-19 20:50:54 · 1441 阅读 · 1 评论 -
算法--三种方法求连续子数组的最大和
求连续子数组的最大和,这是一道考的烂的不能再烂的题目,但是依然有很多公司乐于将这样的题目作为笔试或面试题,足见其经典。原创 2017-06-07 19:12:27 · 2620 阅读 · 0 评论 -
算法--组合数学:杨辉三角数学分析以及Java实现
定义--杨辉三角,是二项式系数在三角形中的一种几何排列。杨辉三角算法分析以及Java代码实现杨辉三角原创 2017-06-03 18:46:22 · 9143 阅读 · 0 评论 -
算法--微软面试题:求一个整数数组元素间最小差值
Q题目 有一个整数数组,请求出两两之差绝对值最小的值,记住,只要得出最小值即可,不需要求出是哪两个数.原创 2017-06-01 16:01:42 · 10259 阅读 · 0 评论 -
算法--数组冒泡排序和选择排序原理分析
算法--数组冒泡排序和选择排序原理分析以及优缺点原创 2017-06-02 16:30:54 · 2964 阅读 · 1 评论 -
算法--2016搜狐面试:搜狐员工放假了,都玩什么?
扎金花这种小游戏,我想作为一名程序员。大部分小时候都玩过吧!现在我们一起来看看搜狐这道面试题吧!看看如何用代码实现扎金花。原创 2017-06-06 11:20:12 · 1266 阅读 · 0 评论 -
算法--06谷歌面试:字符串中第一个只出现一次的字符(Java实现)
这道题是2006 年 google 的一道笔试题,如下:在一个字符串中找到第一个只出现一次的字符。如输入 abaccdeff,则输出 b。原创 2017-06-15 21:03:25 · 989 阅读 · 0 评论 -
算法--腾讯面试:单词游戏,谁会赢?
题目腾讯算法题如下: 有甲乙两家伙用一个英语单词玩游戏。两个人轮流进行,每个人每次从中删掉任意一个字母,如果剩余的字母序列是严格单调递增的(按字典序a < b < c <….),那就谁赢。原创 2017-05-27 16:19:18 · 1249 阅读 · 0 评论