![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 70
兔兔西
殿宇的支柱总是彼此分立的,橡树和松柏也不在彼此的阴影下生长
展开
-
【编程素质】数据结构+算法
确定了解空间的组织节后后,回溯法从开始结点(根节点)出发,以深度优先方式搜索整个解空间。这个开始结点称为活结点,也是当前的扩展结点。在当前扩展结点处,搜索深一层的新结点,这个新结点称为活结点,并成为当前扩展结点。此时,往回移动(回溯)至最近的一个活结点处,并使这个活结点成为当前的扩展结点。回溯法以这种工作方式递归地在解空间中搜索,直到找到所要求的解或解空间中已无活结点为止。原创 2018-07-19 22:12:55 · 886 阅读 · 1 评论 -
【算法】算法-二分搜索
package BinarySearch;public class BinarySearch { /** * 二分查找递归算法 * @param a * @param m 查找数 * @param left 起始下标 * @param right 终止下标 * @return 查找到的数组下标+1,即是数组中的第几个数 */原创 2017-04-27 16:27:08 · 506 阅读 · 0 评论 -
【算法】算法-独立任务最优调度问题(双机调度问题)
1,问题(问题来自:《计算机算法设计与分析(第4版)》王晓东 编著) 用2台处理机A和B处理n个作业。设第i个作业交给机器A处理时所需要的时间是a[i],若由机器B来处理,则所需要的时间是b[i]。现在要求每个作业只能由一台机器处理,每台机器都不能同时处理两个作业。设计一个动态规划算法,使得这两台机器处理完这n个作业的时间最短(从任何一台机器开工到最后一台机器停工的总的时间)。研究一个实例:n=6原创 2017-06-05 16:02:28 · 2708 阅读 · 0 评论 -
【算法】算法-矩阵连乘问题(枚举法、备忘录法、动态规划)
1,问题给定n个矩阵{A1,A2,…,An},其中Ai与Ai+1是可乘的,i=1,2…,n-1。确定计算矩阵连乘积的计算次序,使得依此次序计算矩阵连乘积需要的数乘次数最少。输入数据为矩阵个数和每个矩阵规模,输出结果为计算矩阵连乘积的计算次序和最少数乘次数。2,枚举法(穷举搜索法)枚举所有加括号的方式。 对于n个矩阵的连乘积,设其不同的计算次序为P(n)。每个问题可分解为两个子问题:(A1…Ak)(原创 2017-06-05 20:59:50 · 3689 阅读 · 0 评论 -
【算法】电梯调度算法/磁盘扫描算法
1,问题描述假如有十层楼,每层都有相同数量的人,一共有三部电梯并且没有楼梯。你将如何分配电梯来实现性能最优,及最小化每一层的等待时间? 设计一个使大楼里所有人等待时间最短的算法,同时要考虑每一层的负载量。假定每一层人数相同且每层的人以同样的方式使用电梯。假设每天有几个小时是“高峰时段”,算法需要提供一种最“公平”的方式来将电梯分配到不同的楼层。2,问题分析分析问题,问题规定如下: ...原创 2018-05-14 09:43:07 · 31230 阅读 · 0 评论 -
【数据结构】排序算法
1,概念1)插入排序直接插入排序、折半插入排序、2-路插入排序、表插入排序、希尔排序、快速排序、冒泡排序2)选择排序简单选择排序、堆排序2, 直接插入排序(Insertion Sort)1)原理每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中的适当位置,直到全部记录插入完成为止。2)代码实现public stati...原创 2018-07-26 13:28:00 · 862 阅读 · 1 评论 -
【算法】算法-棋盘覆盖
分治法:package ChessBoard;import java.util.Scanner;public class Main { public static void main(String[] args) { int n;//棋盘大小(行) int i,j; int dr,dc;//特殊方格的所在行、列 int t原创 2017-05-20 11:26:10 · 826 阅读 · 0 评论 -
【算法】剑指offer
1,从1到整数n中1出现的次数思路:若百位上数字为0,百位上可能出现1的次数由更高位决定;若百位上数字为1,百位上可能出现1的次数不仅受更高位影响还受低位影响;若百位上数字大于1,则百位上出现1的情况仅由更高位决定。 举例: ①534 个位1出现的次数:round*1+1 (每次循环1出现一次,0-9循环了53次,第54次循环为0-4) 十位1出现的次数:round*10 +...原创 2018-08-30 15:13:57 · 293 阅读 · 0 评论 -
【算法】笛卡尔积算法
private static void descartes(List<List<String>> dimvalue, List<List<String>> result, int layer, List<String> curList) { if (layer < dimvalue.size() - 1) { if (dimvalue.get(layer).size() == 0) {原创 2021-10-08 09:09:15 · 433 阅读 · 0 评论