问题描述小蓝有一条玩具蛇,一共有16节,上面标着数字1至16。每一节都是一个正方形的形状。相邻的两节可以成直线或者成90 度角。小蓝还有一个4×4的方格盒子,用于存放玩具蛇,盒子的方格上依次标着字母A到P共16个字母。小蓝可以折叠自己的玩具蛇放到盒子里面。他发现,有很多种方案可以将玩具蛇放进去。下图给出了两种方案:请帮小蓝计算一下,总共有多少种不同的方案。如果两个方案中,存在玩具蛇的某一节放...
动态规划特点计数-有多少种方式从一点到一点-有多少种方法选出k个数使得和是Sum求最大最小值-从左上角走到右下角路径的最大数字和-最长上升子序列长度求存在性-取石子游戏,先手是否必胜-能不能选出k个数使得和是Sum先贴代码:package LinkCode; public class Solution { /** * @param A: a list of integer...
用Java实现的时候一般对照着C的代码来写,写的时候有一些问题。根节点信息丢失在运行CreateTree函数无误,但是在进行各种排列时只能显示根节点,左节点和右节点的值并没有被保存,通过排查发现函数中在进行递归插入左右节点的时候直接使用了node.leftnode,问题就出现在这里,这个node。leftnode是TreeNode类型,并没有初始化需要先new一下。各种排序会出现0的状况其实...
二分查找代码:package search; import java.util.Date; public class T1 { public static void main(String[] args) { int[] nums = new int[200000000]; init_data(nums); long startTi...
这段代码还是挺有纪念意义的,从5.20到今天5.26晚上差不多一周时间,几乎把迷宫问题写烂了,但还是远远不够,甚至现在有点分不清dfs和bfs了,刚看了一下总结:dfs:有回溯的就是说在函数里调用了自己后把之前的状态修改回来 bfs基本上就是使用了队列。废话不多数,接下来是LeetCode中的一道题,好像是45题左右。题目是这样的:一个九键输入法,每个按键上有对应的英文数字,现在输入任意的数...
代码:package maze; public class Main { public static void main(String[] args) { int graph[][] = {{0,1,3,4,7},{1,0,2,99999,99999},{3,2,0,5,8},{4,99999,5,0,6},{7,99999,8,6,0}}; Mat...
题目:代码:package maze; import java.util.LinkedList; import java.util.Queue; class Pos { int x, y, step; public Pos(int x, int y, int step) { this.x = x; this.y = y; ...
import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; public clas...
前两天写的 迷宫算法是依据bfs算法最后把数组进行修改,最后得出路径看着比较直观。但实际问题往往不需要输出整个数组,而是选择的路径,所以要使用dfs结合队列进行存储路径代码:import java.util.LinkedList; import java.util.Queue; //定义Postion类主要是为了存储路径 class Postion { int x, y; ...