
C++ 与数据结构
文章平均质量分 80
介绍数据结构相关算法,以及C++的基本理论
程序员AlbertTu
唯有算法,得以永恒
展开
-
类的构造函数与析构函数
介绍C++中的构造函数与析构函数原创 2024-08-22 09:42:14 · 883 阅读 · 0 评论 -
归并排序(附C++实现及验证)
归并排序的核心思想是将一个大数组分割成两个小数组去解决。然后,这两个小数组排序后再将它们合并起来。这个过程中的基本操作是比较两个数组的最前面的数,将较小的数先取出,放到输出数组中。通过递归的方式不断将数组分解,直到每个小数组只有一个元素,认为每个小数组都已经有序,再将它们合并成一个有序的数组。原创 2024-08-11 21:31:29 · 495 阅读 · 0 评论 -
快速排序原理与实现
最优时间复杂度OnlognOnlogn平均时间复杂度OnlognOnlogn最坏时间复杂度On2O(n^2)On2快速排序时间复杂度并不稳定,但数据量较大时我们可能需要一种更为稳定的排序算法——比如归并排序。原创 2024-08-11 18:20:26 · 424 阅读 · 0 评论 -
动态规划(原理及C++实现)
动态规划 动态规划是运筹学的一个分支,是解决多阶段决策过程最优化的一种数学方法,主要用于以时间或低于划分阶段的动态过程最优化。在计算机领域也多有应用,最广为人知的应该是动态规划解01背包问题。例题 给定n个物料的权重和值,将这些物料放在容量为W的背包中,以在背包中获得最大的总价值。解题策略(一) 递归解题是一种很好的思路,只需要借助简单的逻辑就能实现这个复杂的功能。递归代码#include <iostream>using namespace std;int max(in原创 2022-04-03 11:20:02 · 1286 阅读 · 0 评论 -
根据前序遍历、中序遍历还原二叉树
已知前序遍历和中序遍历如何构造二叉树 设有前序遍历(根->左->右):3,9,20,15,7 中序遍历(左->根->右):9, 3, 15, 20, 7算法设计 1. 前序遍历的第一点为根节点 2. 在中序遍历中,根节点的左边为其左子树,右边为其右子树 根据以上特性,设置算法流程如下:确认当前节点、左子树、右子树在左子树中递归在右子树中递归功能代码及测试代码#include <iostream>#include <vector原创 2022-03-28 00:00:00 · 1918 阅读 · 0 评论 -
windows下动态库的生成与调用
windows下动态库的生成与调用前言DLL简介创建DLL调用DLL作者语参考文献前言 如果想要设计更好的软件,深入理解动态库是十分有必要的,因为动态库与大型C++软件的模块化息息相关。本文主要讲解什么是DLL,以及如何用visual studio生成自己的动态库,并调用自己生成的动态库。本文所介绍的也仅仅是windows下的动态链接库。DLL简介 在windows系统上,dll文件和exe文件实际上是一个概念,他们都是有PE格式的二进制文件,不同之处在于PE文件头部中有个符号位表示该文件是ex原创 2021-07-18 19:56:33 · 1713 阅读 · 1 评论 -
QVector与std::vector对比
前言 Qt与STL都提供了诸如QVector之类的容器,在软件开发的过程中,应该使用哪一种容器更为合理呢?笔者认为这取决于你希望如何优化你的软件;如果你在意的是效率,笔者建议你使用vector。实验 vector和QVector都是通过复制构造函数添加对象,但当你执行push_back时,你会发现,vector只调用了一次复制构造函数,而QVector调用了两次复制构造函数。#include <iostream>#include <QtCore/QVector>u原创 2020-08-08 13:19:52 · 5361 阅读 · 0 评论 -
双向循环链表(模板实现)
前言&emsp 此前有读者问我,C++的STL中为什么没有循环链表?我想大概率是因为循环链表的应用很少,另外如果使用者对循环链表的理解不足的话还很容易让程序陷入死循环。不过这些都不重要,接下来,笔者将带你实现一个类似STL中的循环链表。...原创 2020-07-26 14:37:10 · 258 阅读 · 0 评论 -
多项式求值(附C++实现)
目录前言一维多项式求值前言 本文主要介绍了一维多项式的求值和二维多项式求值,从算法工程师的视角出发设计更高效的代码。读者可以通过C++代码或者Python代码进一步了解这个算法。一维多项式求值 计算多项式 显然即使是一个萌新程序员也能实现这个功能,但这不等于他的代码足够高效,按照这一公式编写代码,算法的时间复杂度是而比较高明的写法是算法的时间复杂度是//作者:ccl...原创 2019-03-19 23:06:52 · 8914 阅读 · 0 评论