随笔分类 -  编程语言

摘要:1. 定义 这是个老生常谈的问题,定义大家都懂: 大端模式:数据低位存放在内存高位 小端模式:数据高位存放在内存高位 比如一个十进制数字:12345678 数据低位就是数据的右边,数据高位就是数据的左边; 地址低位就是地址的左边,地址高位就是地址的右边。 假如一页纸表示内存的话,大端模式刚好符合我们 阅读全文
posted @ 2023-03-31 14:44 moonのsun 阅读(390) 评论(0) 推荐(0)
摘要:1. UTC、GMT、墙上时间 Coordinated Universal Time(UTC) Greenwich Mean Time(GMT) 两者都表示标准时间,或世界时,几乎没有差异,后者更加精确 墙上时间也就是本地时间,说出墙上时间的时候,需要告知时区信息,这样才有意义。 2. typede 阅读全文
posted @ 2022-05-10 15:52 moonのsun 阅读(274) 评论(0) 推荐(0)
摘要:1:递归法 vector<int> result;getValue(TreeNode* root, vector<int>& result) { if (root != nullptr) { getValue(root->left, result); result.emplace_back(root 阅读全文
posted @ 2021-09-11 17:21 moonのsun 阅读(591) 评论(0) 推荐(0)
摘要:几条规则: 1. while(left <= right)作为循环进入条件,退出则为left > right 循环内不再有return条件 2. nums[mid] == target之后,假如收缩左侧边界,就修改left,右侧则修改right; 以上图为例,如果找到target,可以一直往左边收缩 阅读全文
posted @ 2021-08-12 14:27 moonのsun 阅读(93) 评论(0) 推荐(0)
摘要:vector set转化为vector:vec.assign(set.begin(), set.end()) map 1. map默认从小到达排序,想要从大到小,可以: map<string, int, greater<string>> 2. map 不可以使用sort排序!不过可以使用在定义map 阅读全文
posted @ 2021-08-11 19:51 moonのsun 阅读(39) 评论(0) 推荐(0)
摘要:bool backTrace(vector<int>& nums, int index, int targetSum) { if (targetSum == 0) { return true; } if (index >= nums.size()) { return false; } // 先尝试使 阅读全文
posted @ 2021-08-04 19:22 moonのsun 阅读(54) 评论(0) 推荐(0)
摘要:1. push_back -> emplace_back:和拷贝有关 2. for (auto one : nums) -> for (const auto& one : nums) :事实证明,没有&就是拷贝实现的,引用更快一些,但是假如不修改,最好使用const 3. 选对STL容器 ① map 阅读全文
posted @ 2021-07-30 20:05 moonのsun 阅读(58) 评论(0) 推荐(0)
摘要:1. 使用场景 一个数组,对于第i个元素,找出离它最近且比它大/小的两边的index分别是多少? 比如“LeetCode接雨水”这道题,就需要找出距离某个index最近且比它大的两边的index, 然后才可以以该index为hight,以right - left + 1位width,求出可以接到的雨 阅读全文
posted @ 2021-07-27 14:24 moonのsun 阅读(46) 评论(0) 推荐(0)
摘要:1. for循环容易忘记break,很多提交不过,都是因为这个 2. 左右指针,思考起来比较复杂,但是以代码容易理解、code精简为主,不要在乎省下一两次运算时间 3. 左右指针,有时候以left <= right为结束条件,可以规避很多边界条件的特殊处理,比如“论文的引用指数h的计算” 4. 假如 阅读全文
posted @ 2021-07-13 10:19 moonのsun 阅读(65) 评论(0) 推荐(0)
摘要:1. static_cast 只支持相关类型的转换,比较安全,比如short与int,double与int,void* 与 int*, float*等 特点:编译期间转换 2. const_case 去掉表达式的 const 修饰或 volatile 修饰,将 const/volatile 类型转换 阅读全文
posted @ 2020-01-02 11:35 moonのsun 阅读(208) 评论(0) 推荐(0)
摘要:1. 两个类需要相互包含的情景 在观察者模式中,气象站的数据送给某些布告牌。 气象站要知道通知哪些布告牌,所以气象站类至少有一个布告牌类型的链表。 布告牌需要把自己注册到气象站类,告诉气象站类自己已经订阅消息, 注册函数需要气象站类作为形参,才知道自己注册到哪一个气象站。 也就是说,在类定义的时候, 阅读全文
posted @ 2019-03-30 22:38 moonのsun 阅读(1541) 评论(0) 推荐(0)
摘要:1.typedef的常规用法 typedef unsigned int UNIT; UINT b; 需要注意的地方有下面几点: ①define 前面替代后面, typedef后面替代前面,这个不要记混了. ②typedef 后面有"分号",宏定义没有. UINT是unsigned int类型的别名. 阅读全文
posted @ 2019-03-20 10:05 moonのsun 阅读(482) 评论(0) 推荐(0)