自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

NewsomTech

知之非艰,行之惟艰。

  • 博客(65)
  • 资源 (2)
  • 收藏
  • 关注

原创 OJ在线编程:C++输入输出控制

文章目录1 键盘输入多组整型数据1.1 输入多组数据1.2 指定数据组数t,接下来t行输入多组数据1.3 输入多组数据,直至数据值等于给定值时停止1.4 多组数据,每行第1个元素是当前行待输入元素的个数1.5 指定数据组数t,接下来t行输入多组数据;每行第1个元素是当前行待输入元素的个数1.6 多组数据,每行第1个元素是当前行待输入元素的个数;直至第1个元素等于给定值时停止1.7 多组数据,每组数据个数不定,空格间隔2 键盘输入二维动态数组3 键盘输入多组字符串数据3.1 第一行指定字符串个数n,第二行输入

2021-03-18 18:59:20 2460 5

原创 C++ STL常用算法:遍历、查找、排序、拷贝与替换、算术生成、集合算法

文章目录0 STL算法1 常用遍历算法【for_each、transform】1.1 for_each【遍历容器元素】1.2 transform【将源容器的元素搬运至目标容器】2 常用查找算法【find、find_if、adjacent_find、binary_search、count、count_if】2.1 find2.2 find_if2.3 adjacent_find2.4 binary_search2.5 count2.6 count_if3 常用排序算法【sort、random_shuffle、

2021-03-01 01:10:42 562

原创 C++ STL常用容器:string、vector、deque、stack、queue、list、set/multiset、map/multimap

文章目录1 string容器1.1 string基本概念1.2 string构造函数1.3 字符串长度【size()、length()、strlen()】1.4 string赋值操作【operator=、assign()】1.5 string字符串拼接【operator+=、append()】1.6 string查找【find()、rfind()】和替换【replace()】1.7 string字符串比较【compare()】1.8 string字符存取【operator[]、at()】1.9 string

2021-02-26 02:37:28 1203

原创 Simon IELTS: Reading

True/False/Not GivenYes/No/Not GivenTips:

2023-04-24 02:14:17 968 1

原创 Simon IELTS: Listening

文章目录Key TipsKey TipsKnow the testDo some real practice tests.Use the break to read ahead (only check back at the end)before each sections startsin the middle of each section (except in section 4)at the end of each sectionWhen you get those

2023-04-24 02:12:54 532

原创 Simon IELTS: Speaking

Simon Speaking

2023-04-24 02:11:19 1125

原创 Simon IELTS: Writing

Simon Writing

2023-04-24 02:09:04 1929

原创 【学习笔记】C++内存管理-侯捷

文章目录C++内存管理:从平地到万丈高楼一、primitives-基础工具1.内存分配的四个层面学习笔记源自博览网侯捷大师的C++课程,在原视频及讲义的基础上填充注释。如有侵权,请联系删除,抱歉。C++内存管理:从平地到万丈高楼目标:深入源码,学习C++分配内存的基本工具及进阶工具管理内存的方式、STL标准库中分配器管理内存的方式、底层malloc函数管理内存的方式。从平地到万丈高楼:从最基础的C++语言构件,到高知名度的内存管理器。基础条件:曾动态分配及使用内存曾使用C++

2021-12-31 02:29:24 1350 2

原创 【学习笔记】C++STL和泛型编程-侯捷

文章目录C++标准库:体系结构与内核分析一、C++ STL标准库与泛型编程1.header、版本和重要资源2.STL体系结构介绍2.1 STL六大部件(Components)2.2 STL容器的前闭后开区间2.3 基于范围的for循环 ranged-base for2.4 auto关键字学习笔记源自博览网侯捷大师的C++课程,在原视频及讲义的基础上填充注释。如有侵权,请联系删除,抱歉。C++标准库:体系结构与内核分析C++ Standard Library —— architecure &a

2021-12-27 02:55:46 2542 3

原创 【学习笔记】C++面向对象高级开发-侯捷

文章目录0 书籍推荐1 面向对象高级开发(上)1.1 头文件与类的声明1.2 构造函数1.2.1 内联函数1.2.2 访问权限1.2.3 构造函数1.3 参数传递与返回值1.3.1 常成员函数1.3.2 参数传递:值传递 vs 引用传递1.3.3 返回值传递:返回值 vs 返回引用1.3.4 友元friend1.4 操作符重载与临时对象1.4.1 操作符重载-成员函数(含this)1.4.2 操作符重载-非成员函数/全局函数(不含this)1.5 构造函数和析构函数1.5.1 具有指针成员的类必须包含拷贝构

2021-11-29 01:18:20 3570 3

原创 C语言:函数指针及定义方式、函数指针作函数参数、回调函数

文章目录1 函数指针2 函数指针、指针函数、函数指针数组3 函数指针的定义方式3.1 typedef定义函数类型3.2 typedef定义函数指针类型3.3 直接定义函数指针变量4 函数指针作函数参数-回调函数1 函数指针函数指针:函数名本身即函数指针,指向函数的入口地址。函数指针的定义:返回值类型 (*函数指针名)(形参列表类型) = 函数名;函数指针的调用:函数指针名(实参列表); 等价于函数名(实参列表);示例:void func(int param1, double param2, c

2021-07-23 02:41:03 2065 3

原创 C语言:一维数组名、数组指针的定义方式、二维数组名

文章目录1 一维数组名1.1 一维数组名称的作用1.2 一维数组名的2种特例情况2 数组指针的定义方式2.1 typedef定义数组类型2.2 typedef定义数组指针类型1 一维数组名参考本人博客《C++数组》第2.2节一维数组的数组名。1.1 一维数组名称的作用(1)统计整个数组的长度,例:sizeof(arr) / sizeof(arr[0]);数组占用内存空间大小:sizeof(arr)数组单个元素占用内存空间大小:sizeof(arr[0])数组长度:sizeof(arr)

2021-07-22 00:18:40 985

原创 C语言:指针的偏移步长、结构体成员的偏移量、嵌套结构体成员的偏移量、结构体的内存对齐

文章目录1 不同类型指针的步长2 结构体成员偏移量1 不同类型指针的步长(1)不同类型的指针 +1 时,内存偏移的字节数不同。char *类型指针 + 1,内存偏移 1 字节;int *类型指针 + 1,内存偏移 4 字节;double *类型指针 + 1,内存偏移 8 字节。示例:#include <stdio.h>//1.不同类型的指针+1时,偏移的字节数不同void func1() { char* p = NULL; printf("%p\n", p); /

2021-07-18 13:32:26 4559 1

原创 【Leetcode-146】LRU缓存机制(C++实现)

题解1 需求分析2 实现代码1 需求分析需求:①O(1)时间访问任意key → 哈希表(unordered_map)②O(1)时间删除LRU缓存中的键值对 → list③O(1)时间向LRU缓存的头部增加/移动键值对 → list(不能使用vector,O(n)时间)思路:外层数据结构:hashtable,存储键值对的键,值维护指向链表中元素的指针内存数据结构:双向链表,支持O(1)时间插入/删除/移动操作注:应尽量使用STL自带的容器/数据结构。2 实现代码#include &

2021-03-19 22:32:21 277

原创 【TopK问题】Java PriorityQueue和C++ priority_queue的用法区别

文章目录0 优先队列解决Top K问题的原理0.1 解决Top K大的问题0.2 解决Top K小的问题1 Java的优先队列PriorityQueue2 C++的优先队列priority_queue需求:使用优先队列(小根堆或大根堆),解决Top K问题。0 优先队列解决Top K问题的原理小根堆(Min-heap):父节点的值小于等于子节点的值;根节点的值最小。大根堆(Max-heap):父节点的值大于等于子节点的值;根节点的值最大。优先队列:优先队列:Java中使用容器Priorit

2021-03-19 10:32:03 414 1

原创 Java HashMap和C++ map的用法区别(插入键值对元素、根据key修改value)

文章目录1 Java HashMap修改实值2 C++ map修改实值需求:根据键值key修改对应的实值value。若键存在,则值加1;若键不存在,则创建该键,并将键对应的值赋为1。1 Java HashMap修改实值Java的HashMap使用put()方法插入键值对元素<key, value>时,若键key相同,则会使用新值value覆盖之前的数据。实现代码:先判断键是否存在:①键存在:先使用get()方法获取原值,加1后使用put()方法插入键值对元素,会覆盖旧值;②键

2021-03-03 17:29:14 931 2

原创 C++ STL(十七):常用集合算法(set_intersection、set_union、set_difference)

文章目录0 常用集合算法简介【set_intersection、set_union、set_difference】1 set_intersection【将两个容器的交集存储至新容器】2 set_union【将两个容器的并集存储至新容器】3 set_difference【将两个容器的差集存储至新容器】0 常用集合算法简介【set_intersection、set_union、set_difference】算法简介:set_intersection:将两个容器的交集存储至新容器。set_union:

2021-03-01 01:07:33 2633 2

原创 C++ STL(十六):常用算术生成算法(accumulate、fill)

文章目录0 常用算术生成算法简介【accumulate、fill】1 accumulate【计算容器元素的累和】2 fill【向容器填充指定元素】0 常用算术生成算法简介【accumulate、fill】算法简介:accumulate:计算容器指定区间内元素的累和。fill:向容器填充指定元素。注:算术生成算法属于小型算法,使用时需包含头文件#include <numeric>。1 accumulate【计算容器元素的累和】作用:计算容器指定区间内元素的累和。注:使用a

2021-03-01 01:04:25 288

原创 C++ STL(十五):常用拷贝算法(copy)和替换算法(replace、replace_if、swap)

文章目录0 常用拷贝【copy】和替换【replace、replace_if、swap】算法简介1 copy【拷贝容器元素至另一容器】2 replace【将指定值全部替换为新值】3 replace_if【将满足指定条件的元素全部替换为新元素】4 swap【互换两个同类型容器的元素】0 常用拷贝【copy】和替换【replace、replace_if、swap】算法简介算法简介:copy:拷贝容器元素至另一容器。replace:将容器内的指定值全部替换为新值。replace_if:按条件将容器内指

2021-03-01 01:01:07 872

原创 C++ STL(十四):常用排序算法(sort、random_shuffle、merge、reverse)

文章目录0 常用排序算法简介【sort、random_shuffle、merge、reverse】1 sort【对容器元素排序】2 random_shuffle【洗牌:对指定范围的容器元素随机排序】3 merge【合并两个容器的元素,并存储至新容器中】4 reverse【反转容器元素】0 常用排序算法简介【sort、random_shuffle、merge、reverse】算法简介:sort:对容器元素排序。random_shuffle:对指定范围的容器元素随机排序,即洗牌。merge:合并两个

2021-03-01 00:57:30 807 3

原创 C++ STL(十三):常用查找算法(find、find_if、adjacent_find、binary_search、count、count_if)

文章目录0 常用查找算法简介【find、find_if、adjacent_find、binary_search、count、count_if】1 find【查找指定元素是否存在】2 find_if【按条件查找元素是否存在】3 adjacent_find【查找相邻且重复的元素】4 binary_search【二分查找法判断指定元素是否存在】5 count【统计指定元素的个数】6 count_if【按条件统计指定元素的个数】0 常用查找算法简介【find、find_if、adjacent_find、bina

2021-03-01 00:55:03 483

原创 C++ STL(十二):常用遍历算法(for_each、transform)

文章目录0 STL算法1 常用遍历算法简介【for_each、transform】2 for_each【遍历容器元素及统一逻辑处理】3 transform【将源容器的元素全部拷贝至目标容器】0 STL算法STL算法主要由<algorithm> <functional> <numeric>等头文件组成。<algorithm>:包括遍历、查找、排序、比较、交换、复制、修改等操作的函数模板。<functional>:包括函数对象/仿函数相关的类

2021-03-01 00:51:50 1357

原创 C++ STL(十一):适配器(函数对象适配器、取反适配器、函数指针适配器、成员函数适配器)

文章目录1 函数对象适配器1 函数对象适配器作用:修饰函数对象/仿函数,提供适配功能。问题案例:使用for_each算法和函数对象/仿函数遍历容器的元素时:①若希望原容器元素经某种运算(如与给定值100进行加法运算)后,再输出运算结果;②给定值可作为operator()函数的参数传递(如由用户键盘输入,而非在operator()函数体内使用固定值100);③for_each(iterator begin, iterator end, _Fn _Func)函数只支持3个参数,且第3个参数需传入

2021-02-27 21:35:49 855 1

原创 C++ STL(十):函数对象/仿函数(函数对象、谓词、内建函数对象)

文章目录

2021-02-26 22:07:33 459

原创 C++ STL(九):map/multimap容器

文章目录

2021-02-26 02:35:00 253

原创 C++ STL(八):set/multiset容器

文章目录

2021-02-25 22:49:31 190

原创 C++ STL(七):list容器

文章目录

2021-02-25 01:11:16 1087

原创 C++ STL(六):queue容器

文章目录

2021-02-24 00:46:50 289

原创 C++ STL(五):stack容器

文章目录

2021-02-23 23:53:53 132

原创 C++ STL(四):deque容器

文章目录

2021-02-23 23:07:25 610

原创 C++ STL(三):vector容器

文章目录

2021-02-23 01:42:40 425

原创 C++ STL(二):string容器

文章目录

2021-02-22 17:54:06 215

原创 C++ STL(一):STL的基本概念

文章目录1 STL基本概念2 STL的六大组件3 STL中容器、算法、迭代器3.1 容器(container)3.2 算法(algorithms)3.3 迭代器(iterator)4 容器、算法、迭代器入门4.1 vector存储内置数据类型4.2 Vector存储自定义数据类型4.3 vector容器嵌套vector容器C++的面向对象和泛型编程思想,目的是提升代码的复用性。为避免重复造轮子,建立数据结构和算法的统一标准,诞生了STL。封装:将属性和行为抽象并作为整体的类。继承:子类继承父类

2021-02-22 02:22:24 446

原创 C++输入流和输出流

文章目录

2021-02-21 23:48:56 661

原创 C++异常(异常的基本语法、栈解旋unwinding、异常接口声明、异常变量的生命周期、异常的多态使用、C++系统标准异常库)

文章目录

2021-02-21 17:28:23 711 3

原创 C++类型转换(static_cast、dynamic_cast、const_cast、reinterpret_cast)

文章目录

2021-02-20 21:45:36 563

原创 C++泛型编程(二):类模板

文章目录1 类模板语法2 类模板与函数模板区别3 类模板中成员函数创建时机4 类模板对象做函数参数5 类模板与继承6 类模板成员函数类外实现7 类模板分文件编写8 类模板与友元9 类模板案例1 类模板语法作用:建立一个通用类,定义类*具体指定返回值类型和形参类型,使用虚拟类型表示;调用函数时再确定其具体类型。语法 :template<typename T>类解释:template — 声明创建模板typename — 表面其后面的符号是一种数据类型,可以用class代替

2021-02-20 02:48:09 583 2

原创 C++泛型编程(一):函数模板

文章目录1 函数模板2 函数模板注意事项3 函数模板练习4 普通函数与函数模板的区别5 普通函数与函数模板的调用规则6 模板的局限性模板:建立通用的模具,可提高复用性。特点:(1)模板是一个框架,不可直接使用(需确定具体类型);(2)模板的通用性不是万能的。C++中的泛型编程思想 ,通过模板实现,包括函数模板和类模板等2种模板机制。1 函数模板作用:将类型参数化(将固定类型抽象为通用类型),提高代码复用性。建立一个通用函数,声明与定义函数时不具体指定返回值类型和形参类型,使用虚拟类型表示

2021-02-19 00:37:42 373 2

原创 【Leetcode-026】删除排序数组中的重复项(Java && C++实现)

题解1 双指针-快慢指针(Java实现)2 双指针-快慢指针(C++实现)-待更新1 双指针-快慢指针(Java实现)/* 方法:双指针-快慢指针 难度:简单 思路:要求不使用额外空间(在原数组中操作) 使用快慢指针依次比较两指针元素: 相同时,仅继续移动快指针; 不同时,先移动慢指针,并使用快指针元素赋值;再继续移动快指针。 时间复杂度:O(n) 空间复杂度:O(1) 类似题目

2021-02-14 21:20:12 108

原创 【Leetcode-022】括号生成(Java && C++实现)

题解1 回溯法(Java实现)2 回溯法(C++实现)-待更新1 回溯法(Java实现)/* 方法:回溯搜索算法 + 括号组合的性质 难度:中等 思路:括号组合问题的性质: (1)对于合法的括号组合,左括号数量【必等于】右括号数量 (2)对于合法的括号组合的任意子串,左括号数量【应大于等于】右括号数量 时间复杂度: 空间复杂度: 类似题目:t020-有效的括号*/import java.util.ArrayL

2021-02-14 21:17:36 125 2

Visual Studio 2019常用快捷键【重点标注版】.pdf

Visual Studio 2019常用快捷键,2021年2月自定义版,适合VS用户

2021-02-16

Visual Studio 2019常用快捷键【打印版】.pdf

Visual Studio 2019常用快捷键(PDF版),可打印熟悉常用快捷键。

2021-02-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除