上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 118 下一页
摘要: 1、八皇后问题 任意两个皇后都不能处于同一行、同一列、同一斜线上,请问有多少种摆法? ■ 解法:回溯+剪枝 ☆ 巧妙的地方: 1、类比二叉树,二叉树是以 节点 为单位,比如前序遍历,是一个节点又一个节点的往下遍历;同样,八皇后是以 行 为单位,第几行放第几个皇后。 2、充分利用了数据结构一维数组,索 阅读全文
posted @ 2022-08-18 15:31 一乐乐 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 一、回溯 1、定义:通过选择不同的岔路口来通往目的地(找到想要的结果) 每一步都选择一条路出发,能进则进,不能进则退回上一步(回溯),换一条路再试【回溯很适合使用递归】 举例:二叉树的前序遍历、图的深度优先搜索、八皇后、走迷宫都是典型的回溯应用 2、八皇后问题 任意两个皇后都不能处于同一行、同一列、 阅读全文
posted @ 2022-08-18 15:26 一乐乐 阅读(46) 评论(0) 推荐(0) 编辑
摘要: 1、定义:函数(方法)直接或间接调用自身。 必须要有一个明确的结束递归的条件 递归的退出条件:思考临界值-拿到参数对它的范围进行判断 例子1: 例子2: 例子3: 2、递归的基本思想: 小规模→大规模;大规模→小规模 ■ 求解过程: 由最小规模问题的解得出较大规模问题的解 由较大规模问题的解不断得出 阅读全文
posted @ 2022-08-17 22:56 一乐乐 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 排序算法,默认是升序,左边的值是属于“小”值 理解比较大小后的交换:当前元素cur 和 左边的元素cur-1, 左边的比较大,就交换或者挪动 array[cur] = array[cur-1]; 编码的区间设置:建议是左闭 右开,方便 [begin, end) 计算方面:使用右移 代替 除法 ☺ 排 阅读全文
posted @ 2022-08-15 22:19 一乐乐 阅读(809) 评论(0) 推荐(2) 编辑
摘要: 一、动态数组 1、知道动态插入、动态删除,还有动态扩容 ▪ 插入: public void add(int index, int element) { //对传入值进行判断是否合理,如果不合理时 //注意插入和删除、获取不同的是,可操作范围是 size (符合数组的特点,连续的内存的空间) rang 阅读全文
posted @ 2022-08-12 16:17 一乐乐 阅读(40) 评论(0) 推荐(0) 编辑
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 118 下一页