- 博客(19)
- 收藏
- 关注
原创 图的建立(vector版)
2.邻接表,适用于稀疏矩阵但是无法快速直接查到两点之间的边,如果有需要可以再用一个专门存储边。1.邻接矩阵并输出6至3的边,n个顶点,m条边的有向图,n+1,是因为建立时下标是从零开始的。可以很快找到两点之间的边但是稀疏矩阵点多时吃不消。
2024-05-17 21:54:39 167
原创 C++最常用的控制输出
setprecision函数是用来控制输出位数的,当不和fixed联用时控制整个数的有效位数,和fixed联用时,专门控制小数位数。注意fixed执行后会持续影响整个代码的输出流。头文件<iostream>
2024-05-17 20:40:05 131
转载 pyhton:解决已经下载好的包却无法调用,IDLE无法调用下载好的包,修改pip命令下载到本地包或者下载到anaconda3
可以看到你的路径中有anaconda3的路径,在执行pip命令下载python包时是按照这些路径的先后顺序来的,如果你的环境变量中pyhton的路径在anaconda之后,pip时就下载到了anaconda文件夹里,此类情况需要将python路径上移到anaconda之前,如果没有python路径请手动添加。我这里在IDLE上import了一个jieba库,没有问题,包被下载到了本地,随口提一嘴,得把你之前下载的包给卸载了,重装到本地才行,使用命令 pip unstall 库名 就行了,再下载。
2024-04-23 22:41:22 406
原创 优先队列Priority_queue,大顶堆,小顶堆,内置元素为结构体(排序)等系列的实现
STL里面默认用的是vector),Functional 就是比较的方式,当需要用自定义的数据类型时才需要传入这三个参数,使用基本数据类型时,只需要传入数据类型,默认是大顶堆,即队首元素最大。首先我们需要了解priority_queue在库 中,其底层实现采用的是堆排序,基本上是很快的一种排序,在大数据量时可以考虑使用这个来辅助排序,废话少说。至于为什么呢,因为大顶堆每次都出栈顶的话,并查到对应二叉树的后面,最后得到的二叉树是从小到 到大的,详情见堆排序算法。
2024-03-10 13:41:15 895
原创 关于在一个for/while循环内重复定义一个变量,重定义的变量地址不变的问题
去掉注释,打印地址发现全部为相同的地址,之前一直没有注意这个问题,还是使用malloc好点。如下列循环产生一个单链表。
2024-02-27 18:23:11 298
原创 关于List中insert函数在插入值后该值的迭代器怎么改变的问题
迭代器并不是像指针地址那样一定为连续的数,插入值后,迭代器++,指向的就是逻辑上的下个数据而不是原来的那个数据。所以两次都是temp--都没有毛病。这是一段希望在temp指向的元素左插入(z==0)和else右插入的·代码。使用Locate[x]存储下x的迭代器值。
2024-02-26 17:24:54 250 1
原创 关于printf未将double型变量强制转换就直接按%lld输出数据直接爆涨的Bug(小错误)以后自己记得转换,不要太依赖自动转换,debug将近一小时
精度问题不可小觑,原以为只小数之类的不准,没想到可以这样差距大。
2023-12-02 13:59:40 90
原创 (蓝桥杯)平方差,巧妙处理
有规律,奇数或4的倍数可以,但是10^9,直接遍历超时,分开判断奇数,为4很麻烦,因为两边的数不确定,巧妙方法,0-a的个数,0-b的个数,作差即可,很好呀,减少了处理。
2023-08-31 21:30:46 140
原创 浙大数据结构线性结构4 Pop Sequence(个人学习笔记)
刚开始栈为空,top指向0,初始化Stack[top]==0;接收n=7,Stack【top】==0!=7,一直入栈,此处省略,Stack【5】=6;有一段从1开始到N的连续的数 ,可以通一个大小为M的栈弹出,形成上述顺序的输出,给定K组测试数据,注意所有的数必须通过栈来弹出,如样例第五个,6>5,不可以理解为栈里放5个数(2~6),7直接不入栈输出。思路:用数组模拟一个栈,如果栈顶的数等于输入的数(假设为n),栈顶数出栈,top--;如果不等于,则一直入栈,从1开始的数,直到栈顶数为n或者栈满。
2023-08-05 22:12:13 115 1
原创 浙大PTA数据结构链表反转线性数据结构3Reserve Linked List(个人学习笔记)
注意反转链表时,需要一次记录三个,自己体会,把第二个节点指向第一个时,第二个节点原先指向第三个节点的指针会丢失,需要保存下来。题目大意:每K个数反转,取余K多的部分不需要反转,把反转后的链表的地址和下一个节点的地址打印出来可能有不在该链的节点。方法3:直接链表改变了next,是真正的反转了链表的连接。方法1(数组排序每K个逆序打印)个人代码。方法1:数组排序后,每K个逆序打印。方法3:(正常链表逆序)三种方法:我用的1和3;
2023-08-05 16:50:35 158 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人