自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (1)
  • 论坛 (1)
  • 收藏
  • 关注

原创 Leetcode每日一题:290.word-pattern(单词规律)

思路:hash索引肯定要用的,但这道题我既要让单词对应字符,也要判断这个单词所对应的字符是否已被别的单词对应,所以我用了两个map,方便判断;一个是map<string,char>,一个是map<char,string>;bool wordPattern(string pattern, string s){ int len = s.size(); map<char, string> m1; map<string, char> m.

2020-12-16 10:43:51 27

原创 Leetcode每日一题:738.monotone-increasing-digits(单调递增的数字)

思路:从后向前遍历,如果当前数字比下一个数字大,就把当前数字-1,并把后面所有数字变成9;这样能保证递增且最大;这里把数字转换成string方便循环修改;int monotoneIncreasingDigits(int N){ if (N / 10 == 0) return N; string s = ""; int n = N; //将数字转换成string while (n) { s.insert(s.begin(.

2020-12-15 09:06:22 26

原创 Leetcode每日一题:面试题17.12 binode

面试题 17.12. BiNode二叉树的中序遍历是弱项,需要额外练习,特别是二叉搜索树的中序遍历,利用它是递增数列的性质;通过一个pre来不断地修改节点指向,有左节点优先左节点,没有则右节点,pre指向的是当前节点在中序序列中的前一个节点;TreeNode *pre = nullptr;void biNode(TreeNode *cur){ if (!cur) return; biNode(cur->left); if (pre == nul

2020-12-13 11:02:57 21

原创 Leetcode每日一题:217.contains-duplicate(存在重复元素)

今天的一道简单题,还算人性,最近一直都是动态规划、贪心这些;方法一:用hash为每一个值建立键值对,在遍历数组元素时,如果这个键值对已存在,说明这个元素重复出现了;方法二:用set集合,因为集合不包含重复元素,把nums所有元素丢进去,如果set的长度和nums的长度不一样,说明有重复元素;//hashclass Solution {public: bool containsDuplicate(vector<int>& nums) { unorder.

2020-12-13 09:52:52 15

原创 Leetcode二叉树&递归:563.binary-tree-tilt(二叉树的坡度)

思路:就是一个二叉树的遍历,不过注意,我们要在遍历过程从对每个节点计算坡度abs(left-right),并加到res中,但我们不能return res,因为坡度的定义是左子树的节点之和与右子树的节点之和的差的绝对值,所以递归时我们要返回return left+right+root->val;为什么这样就能保证left和right就一定表示左右子树的节点和呢?因为当我们递归到叶子节点,叶子节点没有子节点,若以它们的left和right都为0,那么此时就会返回它们自己的节点值,这样递归上去就是;...

2020-12-12 13:25:23 26

原创 Leetcode每日一题:376.wiggle-subsequence(摆动的序列)

class Solution {public: int wiggleMaxLength(vector<int>& nums) { if (nums.size() == 0) return 0; int nLength = 1; int nState = 0; //为1表示上升,为-1表示下降,为0表示元素不够 for (int i = 1; i < nums.size(); ++i) {..

2020-12-12 09:44:37 15

原创 Leetcode每日一题:649.dota2-senate(Dota2参议院)

法一:朴素法,也是看完题后最先想到的,从头开始对于每位议员i,从i的后面开始循环找到i的首个未被禁言的敌人j,并把它的rec[j]置为0,表示被禁言;只有rec[i]!=0的时候,才说明i未被禁言,才能进入循环发挥i的权利;如果某次循环中找不到i的敌人了,那么说明i阵营胜利;string predictPartyVictory(string senate){ int len = senate.size(); vector<bool> rec(len, 1); wh.

2020-12-11 08:54:09 23

原创 Linux能ping主机,但ping不了网关以及外网,显示包全丢失解决方案

尝试了网上各种方案:是对的;也修改了,没问题(这里放的我连上热点后修改ifcfg-ens33后的截图,之前的截图没看见了);也是对应的我的真实网卡;也是用多个桥接模式;以上都没问题,但是就是通不了网关和外网!!!搞了一下午,最终决定断开校园网,换手机热点试试,结果:都ping上了...

2020-12-10 16:49:23 48 1

原创 Leetcode每日一题:860.lemonade-change(柠檬水找零)

思路:初始化手上已有的五元钱和十元钱的数量count5=0,count10=0;然后遇到5元,count5++;遇到十元,判断count5>0?;遇到20元,判断count10>0&&count5>0或者count5>=3;如果遇到10元或者20元有任意情况不满足,直接返回false;class Solution {public: bool lemonadeChange(vector<int> &bills) { .

2020-12-10 08:27:37 19

原创 如何设置centos7的ip地址配置信息,让我的主机和它互Ping,以及远程登陆

下面记录以下我是如何通过桥接模式,让我的主机和centos通信的:第一步:设置桥接模式第二步,修改centos中的IP配置信息:输入vi /etc/sysconfig/network-scripts/ifcfg-ens33修改完后按Esc,然后输入:wq保存并退出编辑第三步:重启网卡,输入service network restart,输出ok即可第四步:打开虚拟器中的编辑->虚拟网络编辑器->更改设置在这个界面中,已桥接至,这里不能选自动选择,这四个选项

2020-12-09 20:13:53 23

原创 Leetcode每日一题:62.unique-paths(不同路径)

思路:一开始用的BFS,超时了,感觉这题可以用数学方程做,但懒得推理了,直接用的动态规划;算是动态规划入门题吧;path[i][j]表示点(i,j)到重点的不同路径个数,那么path[i][j]=path[i+1][j]+path[i][j+1],一开始处理边界,最后一列和最后一行都置为1,因为它们到终点只有一条路径,然后用方程即可;//动态规划int uniquePaths(int m, int n){ if (m == 1 && n == 1) retu.

2020-12-09 08:35:19 19

原创 Leetcode每日一题:842.split-array-into-fibonacci-sequenc(将数组拆分成斐波那契序列)

思路:深度优先搜索,设定最后返回的数组vec,每次搜索只处理一个数,这数可以取1位,也可以取很多位,这取决于前面两个放入vec的数的和(vec只有两个及以下的数时,直接放入),如果无法等于他俩的和,那么这个数没用,并且前一个数应该继续尝试新的数(这里就是回溯);如果遍历到最后我的vec中还有三个以上的数,则说明可行;//当前处理元素S[i]开始若干字符,如果能够与sum相等,继续处理下一部分元素,否则返回false,清除vec后面的元素bool dfs(vector<int> &.

2020-12-08 09:40:14 268

原创 C++中应用于for循环的auto机制,有引用和非引用两种操作

因为今天在做leetcode上每日一题时碰到这样一种情况,我用for(auto a:A)来对一个二维数组进行值的修改时,发现它并不作用在原数组上,就是修改后,原数组的值仍然无变化,于是上网查了查:其中一小段代码的功能就是将二维数组中的首元素为0的行进行翻转(每个元素0变1,1变0)void matrixScore(vector<vector<int>> &A){ int len_row = A.size(), len_col = A[0].size();

2020-12-07 12:27:44 102

原创 Leetcode每日一题:861.score-after-flipping-matrix(反转矩阵后的得分)

思路:二进制一个高位为1比之后所有低位为1所代表的数字都要大,所以首先要确保每一行的第一位为1,然后在这基础上对于每一列,如果零的个数多于1的个数,将这列翻转;static int dec(vector<int> a){ int fac = 1, res = 0; int len = a.size(); for (int i = len - 1; i >= 0; i--) { res += a[i] * fac; fa.

2020-12-07 12:18:07 12

原创 Leetcode每日一题:659.split-array-into-consecutive-subsequences(分割数组为连续子序列)

思路:看它贴的标签是贪心算法,我只想到了记录每个数出现的个数,并且还是数组,后来一想如果元素太大导致数组长度很长怎么办,老是想不到hash的方法,也没想到记录以nums[i]结尾的连续子序列个数;贴上大佬的回答:这里一定不要把tail[nums[i]+1]、tail[nums[i]+2] 和tail[nums[i+1]]、tail[nums[i+2]]混淆;class Solution {public: bool isPossible(vector<int> &n.

2020-12-04 10:44:37 20

原创 读书笔记 - -《Python网络编程》重点

文章目录一、前言二、客户/服务器网络编程简介三、UDP3.1 端口号3.2 套接字3.3 UDP分组3.4 小结四、TCP4.1 TCP工作原理4.2 绑定接口4.3 死锁4.4 小结五、套接字名与DNS5.1 套接字方法和指标5.2 现代地址解析5.2.1 使用getaddrinfo()连接服务5.3 DNS协议5.4 小结六、网络数据与网络错误6.1 封帧与引用6.2 XML与JSON6.3 压缩6.4 网络异常:6.5 小结七、TLS/SSL7.1 TLS无法保护的信息7.2 小结:八、服务器架构8.

2020-12-03 15:07:35 101

原创 该设备或资源(Web代理)未设置为接受端口“7890“上的连接解决方案

今天来实验室打开电脑,打开leetcode网页发现没反应,开始以为校园网又炸了,登微信发现能进,奇怪了;然后重启,还是一样;于是启动网络诊断,出现下面这个界面:网上搜以下,每个试一下,找到了解决方案:打开控制面板;搜索Internet选项:进去之后点击连接:把这个代理的√取消掉然后确定,就可以正常浏览网页了;我估计十有八九是昨天用python玩套接字,模拟客户端和服务器通信的时候,设置了端口号导致的:不过我设置的8082,那么怎么会显示7890???import socke

2020-12-01 08:52:10 2373 6

CMU CSAPP课件

CMU CSAPP课件

2020-09-26

devC++出现error: ld returned 1 exit status错误

发表于 2019-11-11 最后回复 2019-11-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除