算法题

以下是为您整理出来关于【算法题】合集内容,如果觉得还不错,请帮忙转发推荐。

【算法题】技术教程文章

LeetCode算法题-Sum of Square Numbers(Java实现)【代码】

这是悦乐书的第276次更新,第292篇原创01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第144题(顺位题号是633)。给定一个非负整数c,判断是否存在两个整数a和b,使得a的平方与b的平方之和等于c。例如: 输入:5 输出:true 说明:1 x 1 + 2 x 2 = 5 输入:3 输出:false 本次解题使用的开发工具是eclipse,jdk使用的版本是1.8,环境是win7 64位系统,使用Java语言编写和测试。02 第一种解法 暴力解法,直接使用两层for循环...

25道经典Java算法题

25道经典Java算法题 即使做web开发,也会遇到各种各种需要解决的算法问题,本文节选部分经典练手算法,并提供相关参考答案,希望对你有所帮助【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 public class test01 { public static void main(String[] args) { int f1=1,f2=1,f; int ...

FCC JS基础算法题(13):Caesars Cipher(凯撒密码)【代码】

题目描述:下面我们来介绍风靡全球的凯撒密码Caesar cipher,又叫移位密码。移位密码也就是密码中的字母会按照指定的数量来做移位。一个常见的案例就是ROT13密码,字母会移位13个位置。由A ? N, B ? O,以此类推。写一个ROT13函数,实现输入加密字符串,输出解密字符串。所有的字母都是大写,不要转化任何非字母形式的字符(例如:空格,标点符号),遇到这些特殊字符,跳过它们。基本思路不难,难点在如何跳过特殊符号,比如空格逗号...

LeetCode算法题-Minimum Index Sum of Two Lists(Java实现)【代码】

这是悦乐书的第272次更新,第286篇原创01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第139题(顺位题号是599)。假设Andy和Doris想要选择一家餐馆吃晚餐,他们都有一个最受欢迎的餐馆列表。你需要用最少的列表索引总和帮助他们找出他们的共同兴趣。如果答案之间存在选择关系,则输出所有答案并且没有顺序要求。你可以假设总有一个答案。例如: 输入: ["Shogun", "Tapioca Express", "Burger King", "KFC"] ["Piatti", "Th...

FCC JS基础算法题(9):Mutations(比较字符串)【代码】

题目描述:如果数组第一个字符串元素包含了第二个字符串元素的所有字符,函数返回true。举例,["hello", "Hello"]应该返回true,因为在忽略大小写的情况下,第二个字符串的所有字符都可以在第一个字符串找到。["hello", "hey"]应该返回false,因为字符串"hello"并不包含字符"y"。["Alien", "line"]应该返回true,因为"line"中所有字符都可以在"Alien"找到。题目提示使用indexOf方法:function mutation(arr) {// 请把你的代码写在这...

FCC JS基础算法题(10):Chunky Monkey(分割数组)【代码】

题目描述:把一个数组arr按照指定的数组大小size分割成若干个数组块。例如:chunk([1,2,3,4],2)=[[1,2],[3,4]];chunk([1,2,3,4,5],2)=[[1,2],[3,4],[5]];没什么好说的,自己做出的方法与网络上的差别不大,以下是代码:function chunk(arr, size) {// 请把你的代码写在这里var newarr = [];for (var i = 0; i < arr.length; i+=size){newarr.push(arr.slice(i, i+size));}return newarr; }chunk(["a", "b", "c", "d"], 2);

LeetCode算法题-N-ary Tree Postorder Traversal(Java实现)【代码】

这是悦乐书的第269次更新,第283篇原创01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第136题(顺位题号是590)。给定一个n-ary树,返回其节点值的后序遍历。例如,给定一个3-ary树:1/ | \3 2 4 / \ 5 6 其后序遍历结果为:[5,6,3,2,4,1]。 注意:递归解决方案是微不足道的,你可以用迭代的方式做吗? 本次解题使用的开发工具是eclipse,jdk使用的版本是1.8,环境是win7 64位系统,使用Java语言编写和测试。02 第一...

算法题--汉诺塔问题的递归和非递归解法

讲解传送门 https://www.bilibili.com/video/av10046345/?p=9 老师讲的非常好//汉诺塔问题 #include <iostream> #include <stack> using namespace std; //递归解法 void Hanoi(int n, char src, char mid, char dest){//将src上的n个盘子,以mid为中转,转移到dest上if(n==1){cout<<src<<"->"<<dest<<endl;return; //递归终值}//先将n-1个盘子从src移动到destHanoi(n-1, src, dest, mid);cout<<src<<"->"<<dest<<endl;//最后将n-1...

算法题--小游戏

题目传送门https://blog.csdn.net/NNNNNNNNNNNNY/article/details/51592641?utm_source=blogxgwz6 递归与回溯//这个程序是用来判断一个棋盘上给定的两个点相连的最短路径 //使用递归和回溯法求解 #include <stdio.h> #include <memory.h> #define MAXIN 75 char board[MAXIN + 2][MAXIN + 2]; //定义矩形板 //to的四个方向分别代表 下 右 上 左 //w是行数,h是列数 int minstep, w, h, to[4][2] = {{0,1},{1,0},{0,-1},{-1,0}}; ...

LeetCode算法题-Binary Tree Tilt(Java实现)【代码】

这是悦乐书的第263次更新,第276篇原创01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第130题(顺位题号是563)。给定二叉树,返回整棵树的倾斜度。树节点的倾斜被定义为所有左子树节点值的总和与所有右子树节点值的总和之间的绝对差。 空节点倾斜0。整棵树的倾斜度定义为所有节点倾斜的总和。例如: 输入:1/ 2 3 输出:1 说明:节点2的倾斜度为0,节点3的倾斜度为0,节点1的倾斜:| 2-3 | = 1,二叉树的倾斜:0 +...