c/c++
文章平均质量分 83
A_cainiao_A
这个作者很懒,什么都没留下…
展开
-
【给女朋友讲C++】C++的调试之gdb
gdb调试C++原创 2024-08-29 22:00:55 · 882 阅读 · 0 评论 -
【给女朋友讲C++】C++的动态链接库
C++构造动态链接库,并使用原创 2024-08-27 21:42:50 · 850 阅读 · 0 评论 -
【给女朋友讲C++】C++的编译
C++历史,C++编译原创 2024-08-26 23:00:02 · 653 阅读 · 0 评论 -
cmake find_package 使用笔记
find_package原创 2024-07-06 10:15:10 · 502 阅读 · 0 评论 -
WSL2安装ContOS7并更新gcc
wsl安装centos7和gcc原创 2024-07-02 21:11:53 · 1777 阅读 · 0 评论 -
C++引用和指针的区别
引用和指针的区别原创 2023-05-06 11:42:08 · 176 阅读 · 0 评论 -
C++11中随机数生成器(random)
C++11随机数生成器原创 2023-02-27 23:18:19 · 6323 阅读 · 0 评论 -
C++中的参数传递
优化C++中的参数传递,提高程序性能原创 2023-01-15 17:50:37 · 605 阅读 · 0 评论 -
【C++进阶笔记】右值引用和完美转发
右值引用,完美转发原创 2023-01-14 13:20:14 · 672 阅读 · 0 评论 -
如何分析 core 文件
t 出Core的时间,从1970-01-0100:00:00开始的秒数。默认core文件生成在当前路径,可以修改路径。%e 出Core进程对应的可执行文件名。%s 造成Core的signal号。%p 出Core进程的PID。%u 出Core进程的UID。原创 2023-01-05 09:34:37 · 1765 阅读 · 0 评论 -
单例模式-debug
问题描述本来想在工程中用单例模式读入配置文件,但是在调用的地方老是报错:*** Error in `../bin/test_main': double free or corruption (out): 0x0000000002296240 ***Aborted (core dumped)而且是直接报错,就连main函数的第一句打印都没有执行。困扰了我好几天,下面我先说说出现错误的过程。 1.原创 2017-03-13 14:46:52 · 1004 阅读 · 0 评论 -
求二叉树从根节点到每个叶子节点路径上不重复数字的最大个数
问题这个题我在做一个测试的时候做的,当时我忘记保存题目了,只是记着题目大意:求二叉树从根节点到每个叶子节点路径上不重复数字的最大个数。举个例子,如下二叉树:从根节点到叶子节点的路径总过有三条:(1,3,4,1);(1,4,2);(1,4,4)。对应的不重复数字个数为:3,3,2;那么就需要程序返回3。解法由于需要二叉树,我们先给出构造二叉树的代码。在初始化二叉树的时候,根据给定向量使用宽度优先遍历的原创 2017-01-11 12:45:47 · 3181 阅读 · 0 评论 -
C语言实现动态创建二位数组
在C语言中动态的一位数组使用malloc动态分配空间来实现的。实际上,C语言中没有二维数组或者说至少对二维数组没有直接的支持。而是将二维数组转换为一位数组的数组。如:编译器会将a[1][3]解释为 *(*(a+1)+3);例如下面程序段:#includeusing namespace std;int main(){int a[2][3];for(int i = 0;i原创 2013-12-26 17:17:13 · 1592 阅读 · 0 评论 -
算法练习——上台阶问题
算法练习——上台阶问题【问题描述】楼梯有s阶台阶,上楼时可以一步上1阶,也可以一步上2阶,编程计算共有多少种不同的走法。 输入 输入的每一行包括一组测试数据,即为台阶数n。最后一行为0,表示测试结束。 输出 每一行输出对应一行输入的结果,即为走法的数目。 样例输入 1 2 3 4 5 0 样例输出 1 2 3 5 8【问题解析】我们现在想象自己已经站在第n级台阶上了,那么我们上一个位原创 2015-11-25 21:14:01 · 15872 阅读 · 0 评论 -
排序算法之插入排序
【算法思想】插入排序将输入数组a[len]分成两段(以升序排列为例),分别是已经排好序的段(记为p段)和没有排好序的段(记为r段),然后在r段中取一个数放入到p段的合适位置。那么p段和r段就有一个分界点q,我们可以称它为哨兵,当在r段中找的数字小于哨兵我们就将它放入p段中,负责去找下一个。 我第一次理解时,就想不通这是怎么分段的。因为我就输入了一个乱序的数组,它的分界点怎么找。其实在开始时,我们可原创 2015-11-28 01:09:04 · 751 阅读 · 0 评论 -
排序算法之希尔排序
【算法思想】希尔排序的基本思想是将数组进行分组插入排序,逐渐将分组数增加(即将分组的长度减小),最终分组长度(记为tap)变成了一,再进行一次插入排序便可以将数组排好序。因为插入排序对于基本排好序的数组进行排序的复杂度接近O(n)。但是如果最初选择的分组长度为一,那就直接退回为插入排序。 先举个例子(非递减序): 同样的道理进行下去,就可以将数组按非递减序排列。【程序代码】程序实验代码使用原创 2015-11-29 00:43:25 · 726 阅读 · 0 评论 -
排序算法之归并排序
归并排序概述归并排序的基本思想是:将待排序的元素分成大小大致相同的集合,分别对2个子集合进行排序,最终将排好的子集合合并为所以要求的排好序的集合。C++代码#include <iostream>#include <string.h>#include <malloc.h>#include <assert.h>using namespace std;template < typename T >原创 2015-09-27 20:15:21 · 736 阅读 · 0 评论 -
将n划分成最大数不超过m的划分数
将n划分成最大数不超过m的划分数【问题描述】将n划分成最大数不超过m的划分数,例如n=5,m=3,此时划分的情况为{2,3}{1,1,3}{2,1,2}{2,1,1,1}{1,1,1,1,1}共5种。 输入两个数值,分别代表n 和 m 的值,输出为划分数 例如: 输入:5 3 输出:5【分析问题】首先我们先观察上面的那个n=5,m=3的例子,因为我一般做算法题采取的思路是,先找一个例子手动的原创 2015-12-07 16:34:05 · 2491 阅读 · 0 评论 -
排序算法之归并排序
归并排序是所有排序算法中最稳定的,其基本思想是:将待排序的元素分成大小大致相同的集合,分别对2个子集合进行排序,最终将排好的子集合合并为所以要求的排好序的集合。先看看c++的实现代码。 #include <iostream>#include <string.h>#include <malloc.h>#include <assert.h>using namespace std;template原创 2016-01-30 17:30:29 · 713 阅读 · 0 评论 -
c++ 构造函数的默认参数
C++ 构造函数的默认参数声明和定义的区别原创 2016-07-10 20:33:40 · 6977 阅读 · 2 评论 -
Win32 dll 的简单创建与使用
文章利用vc++6.0简单的创建了dll工程,并生成dll文件。同时,在win32 控制台程序中进行了应用。原创 2015-01-18 09:23:34 · 1434 阅读 · 0 评论