随笔分类 -  刷题笔记

记录出现的错误,大佬的方法技巧
摘要:今天在做题时,需要用到在一个自定义的结构体数组(实际上是vector容器)里面查找特定的值: 即: struct good { int id; int sc; }; vector<vector<good>> goods; 在goods中查找 id == 特定值 的good。 由于习惯使用vector 阅读全文
posted @ 2021-10-13 19:22 助手的fork 阅读(761) 评论(0) 推荐(0)
摘要:(randX() - 1)*Y + randY() 可以等概率的生成[1, X * Y]范围的随机数 利用此方法,再加上一些限定就可以生成指定范围的随机数(等概率): 例如:利用Rand(7)生成Rand(10) 由于只能利用Rand(7),所以此时x,y都取7,只有这样才能保证等概率。 (rand 阅读全文
posted @ 2021-09-05 14:06 助手的fork
摘要:1.join函数 join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。 str.join(元组、列表、字典、字符串) 之后生成的只能是字符串。 所以很多地方很多时候生成了元组、列表、字典后,可以用 join() 来转化为字符串。 列表中的元素也需要是字符串 2.map函数与lam 阅读全文
posted @ 2021-04-20 11:01 助手的fork
摘要:组合恒等式: 可得: C[i][j] = C[i][j-1] +C[i-1][j-1]; 此式可用于递归算法,卡特兰数问题等等 卡特兰数的一个公式: h[n]=C[2n,n]−C[2n,n−1](n=0,1,2,...) 典例:求出栈序列的所以情况: #include<cstdio> #define 阅读全文
posted @ 2021-03-26 14:25 助手的fork
摘要:1. str1 = input()s = '1234567890abcdefABCDEF'c = ""for item in str1: if item in s: c = c + item # print(str1.find(c[0]))# print(str1.find('-'))if c == 阅读全文
posted @ 2021-03-13 16:18 助手的fork
摘要:参考:https://leetcode-cn.com/problems/next-greater-element-ii/solution/cong-po-su-jie-fa-de-jiao-du-qu-li-jie-d-trht/ 对于此类问题,最直接的方法就是两重遍历,但是时间复杂度太高。 之所以 阅读全文
posted @ 2021-03-06 15:08 助手的fork
摘要:1.按位与 &是按位与,对应位都为1时该位得1,否则得0。 i&(i-1) 表示将二进制表示的i 的最右边的1变为0。 &与&&不同,&&是逻辑运算。 (1).(i & (i - 1)) == 0)&&(i>0) 用来判断i是否是2的整数幂。 (2).&还用于屏蔽二进制的某些位,一个二进制数 &0是 阅读全文
posted @ 2021-03-03 19:57 助手的fork
摘要:一维数组求区间和: preSum 方法能快速计算指定区间段 【i,j】的元素之和。它的计算方法是从左向右遍历数组,当遍历到数组的i位置时,preSum 表示 i 位置左边的元素之和。 推导过程引用自:https://leetcode-cn.com/problems/range-sum-query-i 阅读全文
posted @ 2021-03-02 09:49 助手的fork
摘要:对于 1 和 0 的翻转,有三种思路: 1.用 1 - 当前值 2.用 1 ^ 当前值(这个符号是 异或,相同为 0,相异为 1) 3.1>>当前值 关于>>位移位运算符,见位运算符(&|^) 阅读全文
posted @ 2021-02-24 10:06 助手的fork
摘要:首先是c++中的哈希表和Python中的字典: 一.unordered_map 哈希表是一个键值对型容器,基于哈希表(hash_table)这种数据结构,理解上有些类似于字典,不同于基于红黑树的map。 头文件:#include<unordered_map> 创建表 unordered_map<ke 阅读全文
posted @ 2021-02-20 12:23 助手的fork 阅读(4460) 评论(2) 推荐(1)
摘要:原题: 典型的滑动窗口问题,其思想本质是: 1.双指针(并非一定设置成指针),前指针主动移动,后指针被迫移动,即通过对约束条件的判断来移动后指针。 2.右指针每次移动一位,而左指针视情况移动,可能为多次。 3.移动右指针探索,移动左指针去满足条件,进而得出满足要求的区间。 以下转载自LeetCode 阅读全文
posted @ 2021-02-19 12:03 助手的fork 阅读(35) 评论(0) 推荐(0)