c++
正在吃饭的派大星
这个作者很懒,什么都没留下…
展开
-
c++ map 将char*等指针类型作为key的坑
偶然用到一个map<char* ,int>构造一个类似于id表的东西,char记录变量名称,作为key。在使用的时候我发现,map的key居然会一直变化,导致每次判断count时都为0.仔细检查后发现,由于每次insert入map的key我都是使用同一个char,而这个char会一直变化。因此要么每次插入声明一个新的char,要么使用string类型。这个错误真的很难发现,但其实想一想也很合理,所有指针等可变类型作为key都需要小心,因此map的key最好用不变的常量...原创 2021-10-24 19:55:45 · 2892 阅读 · 1 评论 -
多项式基本运算的实现
多项式的基本运算(链表实现)程序具体说明:使用链表实现两个多项式的基本操作。初级要求:实现加法、减法和微分操作。高级要求:实现乘法和除法操作。(除法操作中,当不能除尽时还要求列出余式。)节点要包括:系数,指数,下一节点的指针链表中,各结点按指数升幂或降幂排列,生成的结果多项式仍使用原多项式所占用的存储空间:两个同类项相加或相减时,如果系数不为0,则修改该结点的系数值,而指数值不变,将该结点链入结果多项式中,而另一项则释放空间;如果系数为0,则这两项占用的空间均需释放。不同类项则直接放入结果多项式原创 2020-10-24 13:26:54 · 361 阅读 · 0 评论 -
DFS BFS
BFS和DFS的代码简单实现(详细注释)代码部分参考https://blog.csdn.net/qq_36525906/article/details/77387717#include<iostream>#include<queue>using namespace std;int adj(int*visit, int**a, int n, int v)//获取相邻的点的下标,如果无相邻节点,或者已经访问了则返回-1{ for (int i = 0; i < n;原创 2020-10-20 19:51:46 · 73 阅读 · 0 评论 -
BST的基本代码实现(详细注释)
BST的基本代码实现(详细注释)用的都是非常朴素的方法,欢迎交流讨论#include<iostream>#include<queue>using namespace std;typedef struct Bnode { Bnode*left, *right; int data;}BSTnode, *BSTree;void insert(BSTree &root,int val)//改变内容需用指针的引用{ if (!root) { root = n原创 2020-10-11 10:04:24 · 1254 阅读 · 0 评论