09 2021 档案
摘要:剑指 Offer 03. 数组中重复的数字 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 1: 输入:[2, 3, 1, 0, 2, 5, 3] 输出:
阅读全文
摘要:剑指 Offer 05. 替换空格 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 示例 1: 输入:s = "We are happy." 输出:"We%20are%20happy." 限制: 0 <= s 的长度 <= 10000 方法一:调api 利用string类中现成的rep
阅读全文
摘要:剑指 Offer 06. 从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 示例 : 输入:head = [1,3,2] 输出:[2,3,1] 限制: 0 <= 链表长度 <= 10000 说明: 带头节点与不带头节点的链表结构如图所示。经过测试,本题是不带头节
阅读全文
摘要:前后缀表达式 a++表示先使用 a 的当前值,再将 a 的值加 1; ++a表示先将 a 的值加 1,再使用 a 的值 对于内置类型,采用前后缀格式的差别不大; 但是对于用户自定义的数据类型而言,前缀格式++a的效率更高。 将 * 与 ++ 作用于指针时,存在问题:将什么解引用,将什么递增 这取决于
阅读全文
摘要:模板 C++另一种编程思想称为泛型编程 C++提供两种模板机制:函数模板和类模板 注:<typename T> 或者 <class T> 都可以,使用前者可以用来与后者做区分。但如果不需要区分,可以全用代码也不会出错 1.函数模板 1.1函数模板语法 函数模板作用: 建立一个通用函数,其返回值类型和
阅读全文
摘要:剑指 Offer II 004. 只出现一次的数字 题目描述: 给你一个整数数组 nums ,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。 示例: 输入:nums = [2,2,3,2] 输出:3 限制: 1.1 <= nums.length <=
阅读全文
摘要:剑指 Offer II 001. 整数除法 题目描述: 给定两个整数 a 和 b ,求它们的除法的商 a/b ,要求不得使用乘号 '*'、除号 '/' 以及求余符号 '%' 。 示例: 输入:a = 15, b = 2 输出:7 解释:15/2 = truncate(7.5) = 7 限制: 1.除
阅读全文
摘要:[21. 合并两个有序链表](尾插法) 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 : 输入:l1 = [1,2,4], l2 = [1,3,4] 输出:[1,1,2,3,4,4] 限制: 两个链表的节点数目范围是 [0, 50] -100
阅读全文
摘要:1.内存四区 内存四区:代码区、全局区、栈区、堆区 2.new运算符 语法:new 数据类型(对应的释放操作符为delete) 利用new创建的数据,会返回该数据对应类型的指针 例: 整型:int * p = new int(10); delete p; 数组:int *arr = new int[
阅读全文
摘要:1.数据类型 数据类型存在的意义:给变量分配合适的内存空间 2.sizeof关键字 作用:统计数据类型所占内存大小 语法:sizeof(数据类型/变量) 3.整型 INT_MAX (231−1) // INT_MIN(−231) 代码里3e2 = 3 * 10^2 // 2e-2 = 3 * 0.1
阅读全文
摘要:入门知识点: 指针和指针变量是两个不同的概念,但要注意的是,通常我们叙述时会把指针变量简称为指针。 指针就是地址,地址就是指针,它是一个形无符号整型的一个整数。它的大小取决于系统是16,32 还是64位的 16/8=2byte,32/8=4byte,64/8=8byte. 指针变量其实是一个变量,只
阅读全文