什么是回溯 在求解诸如八皇后、全排列等问题时,我们通常使用深度优先搜索dfs在解空间内搜索满足条件的解,dfs的搜索过程可以看做是在一棵搜索树上遍历的过程。例如,求数字[1,2,3]的全排列的搜索树如下: 当我们搜索到树的深层向浅层返回的过程就是回溯。 (我认为可以这样理解:从上往下搜索是递归,从下 ...
分类:
编程语言 时间:
2020-04-25 23:13:57
阅读次数:
105
自己的算法没有AC,还差一个测试点答案错误,说明自己的算法还不够完美,自己的思路是标记链表每个数原来的顺序,之后为每个区间的数分类,当进行sort的时候,会以分类的类别和原来链表的顺序来进行排序。还是多看看柳神的代码吧。 #include<cstdio> #include<iostream> #in ...
分类:
其他好文 时间:
2020-04-25 19:22:36
阅读次数:
55
1. 冒泡排序 冒泡排序(Bubble Sort)是稳定排序,其基本思想是:遍历待排序列,依次两两比较,如果顺序错误就交换。如果从头开始遍历,把较大的交换到后面,结果就是越大的数据越往下沉,所以也可以称为“下沉排序”;如果从尾开始向前遍历,把较小的交换到前面,结果就是越小的数据越往上浮,这就是“冒泡 ...
分类:
编程语言 时间:
2020-04-25 18:45:52
阅读次数:
74
1 重点 对3-7到3-9的总结 2 案例中间操作总结: 无状态操作: a filter 过滤 过滤书籍类产品 b map将一个元素转化成另一个元素 c flatMap将一个对象转化成一个流,字符计数 d peek对流元素进行遍历操作 有状态操作: a sort 对流中元素进行排序,可指定排序规则 ...
分类:
编程语言 时间:
2020-04-25 17:19:33
阅读次数:
101
"Beautiful Now" 题意 给出一个最大为10^9的数字n,以及一个k,你最多交换n中任意两个位置的数字k次,问形成的最大数字和最小数字。 思路 看到这题,我靠这题暴力交换一下,不难啊,咋没人做。。 后来发现是我菜了,贪心写完成功WA了,比如这个样例970970 2,最小值不对。 正解是暴 ...
分类:
其他好文 时间:
2020-04-25 16:56:44
阅读次数:
57
题目描述 给定一个可包含重复数字的序列,返回所有不重复的全排列。 示例: 题目描述: https://leetcode cn.com/problems/permutations ii/ 做这题之前可以先做一下 "全排列" 。 思路 这题和 "全排列" 基本是一样的。这题中的数组可能包含重复的数字,所 ...
分类:
其他好文 时间:
2020-04-25 12:55:45
阅读次数:
49
https://www.cnblogs.com/xxtalhr/p/10787340.html def selection_sort(arr): """选择排序""" # 第一层for表示循环选择的遍数 for i in range(len(arr) - 1): # 将起始元素设为最小元素 min_ ...
分类:
编程语言 时间:
2020-04-25 12:30:05
阅读次数:
56
问题描述:给定一个 没有重复 数字的序列,返回其所有可能的全排列。 class Solution { public: void PT(vector<vector<int>>& res, const vector<int>& nums, vector<bool>& num, vector<int>& ...
分类:
其他好文 时间:
2020-04-25 10:43:32
阅读次数:
64
面试题51. 数组中的逆序对 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。 示例 1: 输入: [7,5,6,4] 输出: 5 限制: 0 <= 数组长度 <= 50000 归并排序简介: 归并排序(MERGE-SORT ...
分类:
编程语言 时间:
2020-04-24 21:28:34
阅读次数:
78
查看占用cpu最高的进程 ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head或者top (然后按下P,注意这里是大写)查看占用内存最高的进程 ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|he ...
分类:
系统相关 时间:
2020-04-24 15:51:58
阅读次数:
68