- 博客(4)
- 收藏
- 关注
原创 判断整数溢出的一般方法
整数的逆运算例如读入较长数字字符串时可以使用if(total>INT_MAX/10||(total==IN_MAX/10&&s[i]-'0'>7)来判断下一次运算是否为溢出。
2021-10-12 20:40:04
360
原创 有效字母异位词
题目:给你两个小写字母单词string s ,string t,请判断他们是否为相同字母的不同组合。思路:使用哈希表存放两个单词每个字母出现的次数,再进行比较;关键在于哈希表的形式:使用大小为26的数组,遍历一遍s,将s中的每个字母出现次数存到数组中,再遍历一遍t,遍历到哪个字母就将对应的值减一,当两个单词一样长的时候,如果数组出现负数就返回0。代码:classSolution{public:boolisAnagram(strings,stringt){...
2021-10-06 23:03:52
91
原创 判断是否为有效数读
思路:1.将二维数组当做一维数组,用一个变量来代表元素的位置。例如board[i/9][i%9]就只使用了i来表示二维数组的元素。2.暴力法组合两个不同的元素,如果不满足以下就返回0:3.判断在同一个以粗实线分割的3*3宫内:当i/9/3==j/9/3并且i%9/3==j%9/3时就表示两个元素在再用一个以粗实线分割的3*3的宫内。c++代码:classSolution{public:boolisValidSudoku(vector<v...
2021-10-02 17:44:05
87
原创 C++ 如何定义简单哈希表
使用mapmap是STL的一个关联容器,它提供一对一的hash。第一个可以称为关键字(key),每个关键字只能在map中出现一次; 第二个可能称为该关键字的值(value);注意事项:使用map要包含头文件mapmap是模板类 定义示范 map<type, type> name;赋值 name[key]=value.作用:可以牺牲空间复杂度换来更优的时间复杂度比如需要组合的比较数组中的两个数据时,用哈希表可以将遍历过得数据存下来节省遍历搜索的时间例题如下...
2021-09-19 23:32:31
948
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人