摘要: class Solution { public: vector<int> twoSum(vector<int>& nums, int target) { std::unordered_map<int, int>map; for(int i = 0; i < nums.size(); i++) { / 阅读全文
posted @ 2022-10-28 21:26 香花草的味道 阅读(31) 评论(0) 推荐(0)
摘要: new是关键字/操作符,而malloc是函数 new一个对象的时候,不但分配内存,而且还会调用类的构造函数(当然如果类没有构造函数,系统也没有给类生成构造函数,那没法调用构造函数了) 在某些情况下,“A *pa = new A()”可以把对象某些成员变量(如m_i)设置为0,这是new的能力之一,m 阅读全文
posted @ 2022-10-28 20:46 香花草的味道 阅读(49) 评论(0) 推荐(0)
摘要: 基础知识 C++中的存储区分为全局数据区、代码区、堆、栈。 全局数据区存放静态数据、全局变量、常量。 代码区存放所有类成员函数和非成员函数的代码。 栈区存放用于函数的返回地址、形参、局部变量、返回类型。 堆区存放余下的内存(new和delete)。 堆和栈的区别: 申请方式不同:栈是系统自动分配,堆 阅读全文
posted @ 2022-10-28 19:41 香花草的味道 阅读(413) 评论(0) 推荐(0)
摘要: 虚函数是使用virtual关键字说明的函数; 虚函数是实现运行时多态性的基础; C++中的虚函数是动态绑定的函数; 虚函数必须是非静态成员函数,虚函数经过派生之后,就可以实现运行过程中的多态; 阅读全文
posted @ 2022-10-28 16:24 香花草的味道 阅读(136) 评论(0) 推荐(0)
摘要: 多态: 1.多态的概念 字面上理解:多种表现形式 专业术语:C++允许父类的指针或者父类引用指向不同的子类对象,通过这个指针或者引用去调用不同子类的同名方法——>叫做多态; 父类的同名函数在不同的子类中具有不同的表现形式——>叫做多态; 多态要解决的两个问题: 问题一:参数具有通用性 解决方法:C+ 阅读全文
posted @ 2022-10-28 14:32 香花草的味道 阅读(92) 评论(0) 推荐(0)
摘要: 指针作为函数参数传递的一些问题总结: #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <iostream> #include <cstdlib> #include <cstring> using namespace std; v 阅读全文
posted @ 2022-10-28 11:40 香花草的味道 阅读(443) 评论(0) 推荐(0)
摘要: void* malloc(size_t size); 其中参数size_t size表示动态内存分配空间的大小,以字节为单位。 size_t 是typedef重定义的类型,重定义这样数据类型的作用就是让使用者一目了然,指示使用者这个参数表示一个长度,在size后加上t,表示是整型相关数据类型的, 以 阅读全文
posted @ 2022-10-28 10:46 香花草的味道 阅读(234) 评论(0) 推荐(0)
摘要: 本质 引用是别名,指针是地址 具体分析 从现象上:指针运行的时候可以改变其所指向的值,而引用一旦和某个对象绑定之后就不再改变。指针可以重新被赋值以指向另外一个不同的对象。 但是引用则是总是指向在初始化时被指定的对象,以后不能改变,但是其指定对象的内容可以改变。 从内存分配上:程序未指针变量分配内存区 阅读全文
posted @ 2022-10-28 09:57 香花草的味道 阅读(95) 评论(0) 推荐(0)
摘要: #include<iostream> #include<unordered_set> using namespace std; // 取数值各个位上的单数平方之和 int getSum(int n) { int sum = 0; while (n) { sum += (n % 10) * (n % 阅读全文
posted @ 2022-10-27 17:11 香花草的味道 阅读(33) 评论(0) 推荐(0)
摘要: set::find搜索二叉树特性查找,时间复杂度为O(logN) 对比std::find std::find为暴力查找,时间复杂度为O(N) 阅读全文
posted @ 2022-10-27 15:12 香花草的味道 阅读(39) 评论(0) 推荐(0)