logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【排序算法】快速排序、冒泡排序

情况时间复杂度空间复杂度最好情况O(n log n)O(log n)最坏情况O(n^2)O(n)平均情况O(n log n)O(log n)时间复杂度:快速排序的平均和最好情况时间复杂度为O(n log n),但在最坏情况下可能会退化为O(n^2)。空间复杂度:快速排序是原地排序算法,额外的空间复杂度为O(1),但递归栈的空间消耗取决于递归深度,平均为O(log n),最坏情况下为O(n)。通过合

文章图片
#排序算法#算法#java +1
【排序算法】归并排序、计数排序、稳定性分析

情况时间复杂度空间复杂度最好情况O(n log n)O(n)最坏情况O(n log n)O(n)平均情况O(n log n)O(n)时间复杂度:归并排序无论在最好、最坏还是平均情况下,时间复杂度始终为O(n log n)。空间复杂度:由于需要额外的空间来存储合并过程中的临时数组,归并排序的空间复杂度为O(n),递归调用栈的空间消耗为O(log n),总空间复杂度为O(n)。稳定性:归并排序是稳定的

文章图片
#排序算法#算法#java
【C++】继承和多态常见的面试问题

菱形继承指的是一个类通过两个子类继承了同一个基类,这两个子类再被另一个派生类继承,形成菱形结构。class A {};在这个结构中,D通过B和C间接继承了两次A,这就形成了菱形继承。菱形继承的问题数据冗余:由于D通过B和C继承了两份A,导致存在两份相同的A成员。这在内存中会引起冗余,浪费空间。二义性问题:当在D中试图访问A的成员时,编译器无法确定该访问来自B继承的A还是C继承的A,从而导致二义性。

文章图片
#面试#c++#java
深入理解OJ编程中的输入输出:11个经典题目详解与技巧分享及stringstream,sort详解

类是头文件的一部分,它继承自istream和ostream,这意味着你可以像使用cin和cout一样使用它来进行输入输出操作。可以通过传递一个自定义比较函数或函数对象来改变排序的规则。#include// 引入 sort 函数// 自定义比较函数,用于降序排序// 定义一个整数向量// 对向量进行降序排序// 输出排序后的向量// 打印每个元素return 0;除了使用标准库提供的函数对象外,C+

文章图片
#算法#c++#数据结构 +2
【排序算法】选择排序、堆排序

堆排序是一种基于堆(Heap)数据结构的排序算法。最大堆:每个节点的值都大于或等于其子节点的值。根节点是最大值。最小堆:每个节点的值都小于或等于其子节点的值。根节点是最小值。首先将无序数组构建为一个最大堆。然后,将堆顶(即最大值)与数组的最后一个元素交换,缩小堆的范围,对剩下的元素继续调整成最大堆,直到排序完成。

文章图片
#排序算法#算法#数据结构
【机器学习】决策树与随机森林:模型对比与应用案例分析

决策树是一种树状结构的模型,用于解决分类和回归问题。模型通过递归地将数据集分割成更小的子集,最终到达叶子节点,每个叶子节点表示一个预测结果。决策树的每个节点代表对某个特征的测试,每个分支代表测试结果,而每个叶子节点则表示最终的预测类别或值。随机森林是一种集成学习方法,通过构建多个决策树并结合它们的预测结果来提高模型的准确性和鲁棒性。随机森林通过集成多个基学习器(通常是决策树),并利用投票机制(分类

文章图片
#机器学习#决策树#随机森林 +1
ACM模式下算法题输入输出攻略【C++】

在编程竞赛和笔试中,ACM模式是常见的要求,它需要我们编写完整的程序来处理输入输出。与平台上的核心代码模式不同,ACM模式通常要求我们处理标准输入输出并完整实现解决方案。核心代码模式只需要提交核心算法部分(通常是某一个函数),而ACM模式需要处理整个程序(包括main函数),包括输入输出和其他程序结构。在ACM模式中,链表、二叉树这些数据结构的定义也需要自己去定义,接下来就给出二者的定义、输入和输

文章图片
#算法#c++#开发语言 +1
【爱上C++】vector用法详解

vector文档vector是表示可变大小数组的序列容器。就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理。本质讲,vector使用动态分配数组来存储它的元素。当新元素插入时候,这个数组需要被重新分配大小为了增加存储空间。其做法是,分配一个新的数组,

文章图片
#c++#开发语言
【机器学习】线性回归与逻辑回归的极致解析:从数学理论到实战案例

线性回归是一种统计方法,用于研究因变量(目标变量)与一个或多个自变量(特征变量)之间的线性关系。通过拟合一条直线,线性回归模型试图找到最优的线性函数,使得预测值与实际观测值之间的误差最小。这条拟合的直线被称为“回归线”。简单线性回归(Simple Linear Regression)是指只有一个自变量的情况,而多元线性回归(Multiple Linear Regression)则涉及多个自变量。

文章图片
#机器学习#人工智能#c++ +1
【爱上C++】list用法详解、模拟实现

文档在这里→官方文档←list是可以在常数范围内( 时间复杂度为O(1) )在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代(双向迭代器)。list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过指针指向其前一个元素和后一个元素。list与forward_list非常相似:最主要的不同在于forward_list是单链表,只能朝前迭代,已让其更简单高

文章图片
#c++#list#开发语言
    共 12 条
  • 1
  • 2
  • 请选择