
C++
文章平均质量分 51
enemyincoming
这个作者很懒,什么都没留下…
展开
-
时间复杂度的详细求解
时间复杂度计算方法(包括递归式求解)预备知识:①积分近似:∑i=0nf(i)∼∫i=0i=nf(i)di\sum_{i=0}^nf(i)\sim\int_{i=0}^{i=n}f(i) dii=0∑nf(i)∼∫i=0i=nf(i)di 一般地:∑i=0nf(i)≤∫i=0i=nf(i)di\sum_{i=0}^nf(i)\le\int_{i=0}^{i=n}f(i) dii=0∑nf(i)≤∫i=0i=nf(i)di②分治递归式通解:(主定理的原式)T(n)=aT(n/b)原创 2022-05-20 00:00:37 · 2253 阅读 · 0 评论 -
2021-10-18 力扣数据结构第一天
只出现一次的数字点击访问思路一:哈希集合表① 建立哈希集合表unordered_set<int, int> hash② 遍历数组中的元素,每次遍历判断元素在集合中的个数是否存在,若已经存在就删除,否则就进入集合。最终这个操作使得集合只剩下一个元素,这个元素就是只出现一次的数字。class Solution {public: int singleNumber(vector<int>& nums) { auto it = nums.begin原创 2021-10-18 21:29:09 · 234 阅读 · 0 评论 -
【C++类与数据结构】单链表以及基本操作手段
引入链表是最基本的数据结构,它由若干个节点组成,每个节点可以在内存上不连续,通过指针建立联系,一个节点由数据和下一个节点地址组成:head是用来遍历整个链表的指针。头节点和尾节点顾名思义,分别是第一个节点和最后一个节点。默认条件下,我们设置head = NULL;即head为空指针(也可以使用nullptr)链表在空的情况下,其组成部分有且仅有head指针!由于链表是由节点组成的,所以我们要先定义一个节点struct(当然可以用class)//节点结构体struct Node{原创 2021-05-13 17:44:54 · 306 阅读 · 0 评论 -
【C++】STL之map键值对
map是映射,联想高中数学知识,这东西其实就是“键值对”。一个东西对应另一个东西的意思。比如一个人对应一个学号,就可以定义一个字符串string类型的人为“键”而学号int类型为“值”,如:map<string,int> m;map会自动将所有的键值对按照键的大小从小到大的方式排序。#include <iostream>#include <map>#include <string>#include <cstdlib>using nam原创 2021-05-08 13:35:23 · 1485 阅读 · 1 评论 -
【C++】【PAT】sort快速排序 {1004 成绩排名 (20 分)}
不想自己写排序怎么办?那就用algorithm库里的sort函数吧。sort函数采用的原理是快速排序,需要指出的是,sort函数默认采用的是升序排序,如果想要降序排序,需要自己定义一个bool函数。有以下用法:一、对vector数组和普通数组的排序#include <iostream>#include <algorithm>#include <vector>#include <cstdlib>#include <ctime>us原创 2021-05-08 13:29:16 · 535 阅读 · 0 评论 -
【C++】STL之vector容器
vector容器是一种动态数组,其数组长度是动态的声明vector的方法:vector<类型> 数组名;使用它的方法跟数组大同小异。#include <iostream>#include <vector> //调用vector库using namespace std;int main(){ vector<int> v1; //声明了一个v1的vector数组 cout<<v1.size(); //输出v1的长度 vector&原创 2021-05-08 12:53:12 · 110 阅读 · 0 评论