-
[综合] STL---next_permutation 实现
STL中提供了两个关于计算排列组合关系的算法,分别是next_permutation和prev_permutation。 next_permutation: 分析:给出一个排列P,求出下一个排列P1是什么? 比如P=12345。显然P1:12354。P2:12435。 规律:P->P1:...
71
热度 -
[综合] 条款23:宁以non-member non-friend替换member函数
本条款看的云里雾里的,看网上其他大佬总结的才明白了~ 拿书上的例子: classWebBrower { public:voidClearCach();voidClearHistory();voidRemoveCookies(); }; 定义了一个WebBrower的类,里面执行对浏览器的清理工作,...
88
热度 -
[综合] LeetCode 买卖股票的最佳时机 (动态规划)
目录 简介 分析 总结 简介 leetcode上面有几个关于买卖股票的动态规划题。下面我们来看这种问题的模型: 给定一个数组,它的第i个元素是一支给定的股票在第i天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成k笔交易。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之...
82
热度 -
33
热度 -
[综合] HDU---1043 POJ 1077 Eight 八数码问题 广度优先搜索 康拓展开
问题:很经典的搜索,给定一个3*3的方格,里面放1-8个数字,有一个空格,空位可以与相邻的数字可以移到空格中,问给定一个状态,怎么移动到一个特定的状态(比如1-8顺序存放)。 康拓展开记录当前的状态,BFS即可。 HDU1043是让给定多组状态,怎么还原成1-8顺序存放,可以倒叙BFS,打标出所...
38
热度 -
[综合] Sudoku POJ - 2676 (数独,搜索,位运算优化)
问题描述:给定一个由3*3的方块分割而成的9*9的格子。其中一些格子中填有1~9的数字,其余格子则是空白的。请在空白的的格子填入1~9的数字,使得在每行、每列和每个3*3的方块中,1~9的每个数字都恰好出现一次。 row[i]的二进制代表当前行的状态,如果当前位为1说明该行还没放该数,比如当前r...
39
热度 -
[综合] LeetCode 813. 最大平均值和的分组
813.最大平均值和的分组 我们将给定的数组A分成K个相邻的非空子数组,我们的分数由每个子数组内的平均值的总和构成。计算我们所能得到的最大分数是多少。 注意我们必须使用A数组中的每一个数进行分组,并且分数不一定需要是整数。 示例:输入:A=[9,1,2,3,9]K=3输出:20解释:A的最优分组是[...
91
热度 -
[综合] LeetCode 1125. 最小的必要团队 (可重覆盖,舞蹈链)
1125.最小的必要团队 作为项目经理,你规划了一份需求的技能清单req_skills,并打算从备选人员名单people中选出些人组成一个「必要团队」(编号为i的备选人员people[i]含有一份该备选人员掌握的技能列表)。 所谓「必要团队」,就是在这个团队中,对于所需求的技能列表req_skill...
63
热度 -
[综合] 舞蹈链---精确覆盖,解决数独问题
首先看看数独问题(9*9的方格)的规则 1、每个格子只能填一个数字 2、每行每个数字只能填一遍 3、每列每个数字只能填一遍 4、每宫每个数字只能填一遍 那现在就是利用这个规则把数独问题转换为精确覆盖问题 可是,直观上面的规则,发现比较难以转换为精确覆盖问题。因此,把上面的表述换个说法 1、每个格子...
55
热度 -
[综合] FZU - 1686 神龙的难题 (舞蹈链,可重覆盖)
这是个剑与魔法的世界.英雄和魔物同在,动荡和安定并存.但总的来说,库尔特王国是个安宁的国家,人民安居乐业,魔物也比较少.但是.总有一些魔物不时会进入城市附近,干扰人民的生活.就要有一些人出来守护居民们不被魔物侵害.魔法使艾米莉就是这样的一个人.她骑着她的坐骑,神龙米格拉一起消灭干扰人类生存的魔物,维...
85
热度 -
[综合] 非比较排序--- 计数排序、基数排序、桶排序
计数排序 计数排序是一种稳定的排序算法。计数排序是最简单的特例,由于用来计数的数组C的长度取决于待排序数组中数据的范围(等于待排序数组的最大值与最小值的差加上1),这使得计数排序对于数据范围很大的数组,需要大量时间和内存,实用性不高。例如:计数排序是用来排序0-100之间的数字的最好的算法;另外,计...
14
热度 -
[综合] LeetCode---链表
目录 一、反转链表类型 二、双指针类型 三、链表合并类型 四、链表排序 一、反转链表类型 206.反转链表 /***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode(intx):val(...
37
热度 -
[综合] LeetCode---全排列(递归、next_permutation、康托展开)
目录 一、递归求全排列 二、next_permutation实现 三、康托展开 一、递归求全排列 46.全排列 classSolution{vector<vector<int>>ans;public:vector<vector<int>>permu...
48
热度 -
[综合] LeetCode---二叉树
二叉树是数据结构的基础,本文对LeetCode上的一些题型做一个总结 目录 一、遍历 二、根据遍历去求一些东西 一、遍历 遍历分为递归遍历、非递归遍历、以及O(1)空间实现遍历(Morris);以及层次遍历。 94.二叉树的中序遍历 /***Definitionforabinarytreenod...
19
热度 -
[综合] Leetcode---并查集
简介 并查集是一种数据结构,一般它处理的是图(其实是解决无向图的)的连通分量问题,但是当并查集的根节点可以维护更多的信息时,并查集可以解决范围更广的基于无向图连通分量的问题。做了这么多并查集的题目后,我感觉并查集就是解决有关物与物之间的关系问题的数据结构且这种关系还必须是可传递的关系,所以一般遇到这...
42
热度 -
[综合] LeetCode---背包问题
LeetCode上没有背包基本模型题,有几个简单的背包类的题,这里总结一下。 目录 416.分割等和子集 322.零钱兑换 518.零钱兑换II 416.分割等和子集 给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 注意: 每个数组中的元素不会超过1...
53
热度 -
[综合] MQL5语言基础(二)
数据类型 任何程序都依靠数据来运作,数据因目的不同可以有不同的类型。比如,访问数组可以用整型数据,价格可以用双精度的浮点型数据。在MQL5中没有专门用来标记货币值的数据类型。不同的数据类型有不同的处理速度,整型数据是最快的。双精度的数据处理需要特殊的协同处理器,然而,因为处理浮点型数据比较复杂,所以...
33
热度 -
[综合] 大数据技术之Linux 第4章 VI/VIM编辑器
4.1是什么 VI是Unix操作系统和类Unix操作系统中最通用的文本编辑器。 VIM编辑器是从VI发展出来的一个性能更强大的文本编辑器。可以主动的以字体颜色辨别语法的正确性,方便程序设计。VIM与VI编辑器完全兼容。 4.2测试数据准备 1)拷贝/etc/smartd.conf数据到/root目录...
76
热度 -
[综合] 大数据技术之Hadoop(入门)第3章 Hadoop运行环境搭建
3.1虚拟机环境准备 1)克隆虚拟机 2)修改克隆虚拟机的静态ip 3)修改主机名 4)关闭防火墙 5)创建atguigu用户 6)配置atguigu用户具有root权限 以上6条内容详见《尚硅谷大数据技术之Linux》文档。 7)在/opt目录下创建文件夹 (1)在/opt目录下创建module、...
94
热度 -
[综合] 大数据技术之Hadoop(入门)第6章 常见错误及解决方案
1)防火墙没关闭、或者没有启动yarnx INFOclient.RMProxy:ConnectingtoResourceManagerathadoop108/192.168.10.108:8032 2)主机名称配置错误 3)ip地址配置错误 4)ssh没有配置好 5)root用户和atguigu两个...
77
热度