摘要:
前言:本文记录自己学习 C 语言可变长参数的设计原理,供自己以后复习,读者基本知识自行百度(涉及到参数压栈的相关知识)。C 语言提供了几个宏函数为实现变长参数提供了接口。 1. 头文件 : #include <stdarg.h> 2. 宏函数(右边注释部分为宏函数的模拟实现) : Example : 阅读全文
摘要:
一、列表list 1. 列表的特征 1. 列表中的每个元素都可变的,意味着可以对每个元素进行修改和删除; 2. 列表是有序的,每个元素的位置是确定的,可以用索引去访问每个元素; 3. 列表中的元素可以是Python中的任何对象; 4. 可以为任意对象就意味着元素可以是字符串、整数、元组、也可以是 l 阅读全文
摘要:
一. lower_bound( ) 和 upper_bound( ) 都是利用二分查找的方法在一个排好序的数组中进行查找的。 在从小到大的排序数组中: a. lower_bound( begin,end,num):从数组的begin位置到 end-1 位置二分查找第一个大于或等于num 的数字,找到 阅读全文
摘要:
前言:C++中的容器,分为关联式容器和序列式容器两大类,其中关于利用迭代器删除元素有很多坑,以前一直被坑,但一直没整理,今天记一下! 一. 关联式容器 对于关联式容器(如map,set,multimap,multiset),删除当前节点的迭代器,仅仅会使当前的迭代器失效,只要在 erase 迭代器时 阅读全文
摘要:
前言: 本文主要记录关于力扣 (204. 计数质数问题)的两个问题推导: 1. 对于任意一个大于 2 的正整数 n, 如果在区间 [2, √n] 之间不存在 n 的正整数乘法因子 a , 那么 n 是质数。 推导:在上述前提下,假设在 (√n, n) 之间存在 n 的正整数乘法 b 使得 b * c 阅读全文
摘要:
一. map、set、multimap、multiset 上述四种容器采用红黑树实现,红黑树是平衡二叉树的一种。不同操作的时间复杂度近似为: 插入: O(logN) 查看: O(logN) 删除: O(logN) 二. unordered_map、unordered_set、unordered_mu 阅读全文
摘要:
1 开启关闭服务 2 管理员启动cmd,,net start/stop mysql,, 3 登录数据库,,mysql 【 h localhost P 端口号】 u 用户名 p,, 4 退出数据库,,exit,, / ctrl+c 5 查看版本号,,mysql V,, 6 常见语句 7 查看当前所有数 阅读全文
摘要:
1. 类的大小与什么有关系 与类大小有关的因素:普通成员变量,虚函数,继承(单一继承,多重继承,重复继承,虚拟继承) 与类大小无关的因素:静态成员变量,静态成员函数及普通成员函数 2. 空类 空类即什么都没有的类,按上面的说法,照理说大小应该是0,但是,空类的大小为1,因为空类可以实例化,实例化必然 阅读全文
摘要:
说明:本文主要分析关于力扣 10 题(正则表达式匹配) 和 力扣 72 题(编辑距离) 的状态方程问题(主要便于自己理解) 1.关于编辑距离的状态方程: a. 首先 DP[i][j] 为字符串 1 的前 i 个字符和字符串 2 的前 j 个字符能匹配的最小步数; b. 其次根据字符串编辑操作:增添、 阅读全文
摘要:
一. 结构体默认的字节对齐一般满足三个准则: 1) 结构体变量的首地址能够被其最宽基本类型成员的大小所整除; 2) 结构体每个成员相对于结构体首地址的偏移量(offset)都是成员大小的整数倍,如有需要编译器会在成员之间加上填充字节(internal adding); 3) 结构体的总大小为结构体最 阅读全文