自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 LaTeX——tikz学习(1)——基本内容学习

TikZ宏包是一个十分强大的绘图宏包,它提供\tikz 命令和tikzpicture 环境。2、具体绘图指令可以放在\tikz 后面,也可以放在tikzpicture 中间。1、主文件加载tikz宏包,下面就可以使用宏包的对应命令。

2024-05-03 11:04:47 842 1

原创 【C++】机试刷题总结day14——四、字符串——string知识点

string——>其他类型:sto系列函数(stoi(变成int)、stol(变成long)、stof(变成float)、stod(变成double))<2>字符数组不支持赋值、判断相等、比较大小——>C风格字符数组不能作为map和set的类型参数。erase(要删起始下标,要删尾后下标) 左闭右开[,) 尾后下标(终止下标的下一个位置)不推荐的原因:①性能差(机试超时) ②cout格式管理麻烦(printf小数点后2位 %.2f)(4)< <= > >= 比较大小,比较的是字典序。

2024-03-27 18:05:44 498

原创 【C++】机试刷题总结day13——三、排序和查找——查找(难※)

若查找多次x元素,查m次,时间复杂度O(mn),假设10的4次方次查找,10的6次方的个元素——>10000ms>1000ms。(3)每个字符按从小到大顺序输出——>需要另外的数据结构,记录出现的先后次序,vector动态数组,下标小先出现。(2)map:记录字符和位置(位置有重复,不能用简单整数——>①multimap可重复②动态数组vector)N个元素,查找M次,时间复杂度O(NlogN(排序)+M(查询次数)logN(每次二分查找))b可以不用建立动态数组,查完给出结果即可。

2024-03-24 22:01:16 460

原创 【C++】机试刷题总结day12——三、排序和查找——排序

sort函数底层:快速排序(小于枢纽放左边,大于枢纽放右边,基于比较一定存在:lhs代表左边指向的内容,rhs代表右边指向的内容if(lhs 比较 rhs) {//默认比较是小于< 不交换 } else {交换 }默认比较是小于<(升序)自定义函数(),两个参数lhs和rhs,返回bool值(true\false)函数体内是不发生交换的条件在主函数内调用sort函数,有三个参数,第三个参数是自定义的函数名。

2024-03-23 22:39:08 352 1

原创 【C++】机试刷题总结day11——二、枚举和模拟(下)map非线性数据结构

与begin,end的区别:begin、end是整个容器;(1)向字符串数组写入时,不用加取地址符号,因为str本身就是指向数组的指针。如果访问的键不存在,会新增一个键值对,键为查找的’a’,值为默认初始值0。可以通过下标访问元素,下标可以是任意类型,元素也可以是任意类型。与set区别:set内是单个元素的集合,map内是键值对的集合。键为键为char表示按键a-z,值为int表示在哪个按键。:返回key对应的最后一个值的后一个位置。(1)通过key找对应的value。:返回key对应的第一个值的位置。

2024-03-23 12:01:09 816 1

原创 【C++】机试刷题总结day10——一、枚举和模拟(下)set非线性数据结构

count==0元素不存在(更简单,无需迭代器)一共10个数,每个数可能出现或不出现,共2的10次方=1024种可能性。无需关心元素的位置,vector(增删)需要用迭代器指明位置,find函数:查找元素位置,返回迭代器;:0≤n≤10的6次方,阶乘增长很快,数据可能不是很大。5的阶乘到120,扩大范围,10的阶乘超过100万。xi≥0——>从0的阶乘开始算,0的阶乘是1。因此只需考虑0-9的阶乘,10以上的无需考虑。每次加入一个新的阶乘,里面的数量翻倍。t≥1——>阶乘的和至少有一项。

2024-03-17 22:30:37 1248 1

原创 【C++】机试刷题总结day09——一、枚举和模拟(下)list链表

创建2个动态数组,分别存储完数和盈数;单独创建一个函数用来存储因子之和,判断因子的方法:能除尽就是因子。复制输入样例时,输出的每组结果就在对应每组输入后面,因此输出结果夹杂在复制一堆输入之间。优势:list中使用erase和insert效率更高,因为底层是双向链表。不足:动态数组vector(顺序表)在中间插入删除效率低。优先选择vector,若大量插入删除,则改为list。用vector数组来存放树,0表示有树,1表示没树。(3)分糖果不能先分第一个,再分第二个,要同时分。(1)当输入0时,输入结束。

2024-03-17 16:39:28 365 1

原创 【C++】机试刷题总结day08——一、枚举和模拟(下)vector动态数组+迭代器

②内存分配:局部数组(<1MB) 全局数组(很大,但是可能超过题目限制)——>局部不够放全局,全局不够改算法。③数组作为函数参数不方便(被调用函数只能拿到数组地址,不知道数组长度)——>传2个参数(首地址,长度),多使用push_back,因为动态数组是顺序表,在中间位置插入,效率低。end函数:可以获取尾后的位置(最后一个元素的后一个没有元素的空位置)③找已知元素在vector的位置——>查找算法(下一章)——>erase函数+迭代器(指向要删除位置),迭代器的值发生变化,若还想继续插入或删除,

2024-03-14 17:51:20 1403

原创 dev c++调试查看vector内元素的数值

参考于链接: 添加查看的方式链接: 添加头文件1.错误方式:添加查看vec1,这样会导致无法继续运行2.正确方式:查看单个元素:*(&vec1[0])查看多个元素:*(&vec1[0])@2@后面数字为查看从vec1[0]开始的元素个数修改为以上的方法之后,我这边还是报错报错信息为<error: Could not find operator[].>经过再次搜索之后,我找到了解决方法,添加头文件内容这次效果如下,可以正常查看vector内的元素完整代码如下

2024-03-14 11:38:43 685

原创 【C++】机试刷题总结day07——一、枚举和模拟(下)日期问题

中表示。

2024-03-13 22:55:37 306

原创 【C++】机试刷题总结day06——一、枚举和模拟(上)模拟问题

①不要看做一个整体将图案分解为——>一行行字符串字符串再分解为——>数组中各元素②找规律:列表法先找特殊行,看元素种类(eg:空格、数字等)、数量、行号、列号③从表格中找规律:找等差数列④转换成代码。

2024-03-13 17:25:16 710

原创 【C++】机试刷题总结day05

开始王道网课,系统准备机试。内容:枚举和模拟(上)

2024-03-09 22:09:50 432 1

原创 【C++】机试刷题总结day04

旧思路:从头遍历一遍数组,根据00,01,10,11的不同情况分别处理,第0个元素单独处理,但是结果不对,需要再思考一下哪里出了问题。新思路:元素不是1就是0,因此遍历数组时,若当前元素是1,则说明前面是连续个1;若当前元素是0,说明连续个1断到了这里。利用类似线代的思想,会发现第一行变成了倒数第一列,第一行的第2列元素变成了倒数第一列的第2行元素。※※遍历结束的最后一位,如果是1,则不会进行比较。整体思路:创建一个同样大小的新数组,新数组存储应该得到的结果,最后再赋值回旧数组。

2024-03-08 22:11:06 328

原创 【C++】机试刷题总结day03

vector的assign函数赋值,求数组中心索引的优化思路。

2024-03-05 23:50:20 236

原创 【C++】机试刷题总结day02

小写字母97-122。

2024-02-21 17:41:35 115

原创 【C++】机试刷题总结day01

1.返回类型为vector数组 2.遍历string字符串每个字符

2024-02-20 21:43:00 325

空空如也

空空如也

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

TA关注的人

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