自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(108)
  • 收藏
  • 关注

原创 转置/旋转矩阵

本文介绍了矩阵转置和旋转的实现方法。对于转置矩阵,通过行列交换实现,分别展示了C++ STL容器和C语言中二维数组、一维数组指针、指针数组三种实现方式。对于旋转90度操作,提出了原地算法:顺时针旋转通过"转置+行反转"实现,逆时针旋转则采用"行反转+转置"的方式。这两种方法均能在O(n²)时间复杂度和O(1)空间复杂度下完成操作,适合处理大规模矩阵。文中通过图示和代码示例详细说明了实现步骤和原理。

2025-10-27 10:04:07 898

原创 215.数组中的第K个最大元素

文章摘要:本文探讨了查找数组中第K大元素的三种方法。1)排序法:直接排序后取第k-1位元素,时间复杂度O(N*logN);2)大根堆法:建堆后删除k-1次,时间复杂度O(N+(k-1)logN),适合k较小情况;3)小根堆法:维护k个元素的小堆,时间复杂度O(K+(N-K)logK),适合k较大情况。三种方法各有适用场景,需根据k值选择最优解。

2025-10-27 09:31:12 481

原创 python基础语法--string

它将可迭代对象中的每个元素都转换为字符串,并使用指定的分隔符将它们连接起来,返回一个新的字符串。,并将字符串分割成三部分。在这个例子中,我们首先创建了一个转换表,将字母 'a' 替换为 '1',字母 'b' 替换为 '2',字母 'c' 替换为 '3'。方法同时移除字符串的左侧和右侧的指定字符集合中的字符,直到遇到第一个非指定字符为止。方法从字符串的左侧开始移除指定字符集合中的字符,直到遇到第一个非指定字符为止。方法从字符串的右侧开始移除指定字符集合中的字符,直到遇到第一个非指定字符为止。

2025-10-27 09:06:09 859

原创 项目--五子棋(模块实现)

本文主要介绍了在线五子棋项目中具体模块的设计思路和实现~

2025-07-17 21:14:59 1103

原创 Ubuntu 22.04 & Windows11 双系统安装

本文主要介绍了如何在Windows11中安装Ubuntu22.04操作系统,也简单介绍了如何安装CentOS。在最后也给出了一些关于操作系统的知识……

2025-07-14 09:06:20 1279

原创 Trie(字典树)

本文主要介绍了 Trie(前缀树/字典树)这一高效存储和检索字符串集合的树形数据结构,并给出相关实现~

2025-06-29 17:19:50 1100

原创 编译原理--期末复习

本文记录了编译原理课程期末复习的笔记~

2025-05-18 22:24:42 1397

原创 软件架构设计--期末复习

本文是记录软件架构设计课程期末复习的笔记~

2025-05-18 22:15:41 1221

原创 Linux程序设计--期末复习

本文主要记录Linux程序设计课程期末复习的笔记~

2025-05-14 21:01:57 863

原创 简单线程池实现

本文基于Linux中的进程同步和互斥实现了一个简单的线程池~

2025-04-06 08:05:14 1064

原创 VScode连接CentOS 7.6虚拟机

本文主要介绍如何使用VScode连接CentOS 7.6虚拟机,并在CentOS7.6中安装高版本编译器、CMake等开发工具~

2025-04-03 15:18:37 1700

原创 项目--五子棋(前端模块)

本文主要介绍五子棋项目中前端模块的设计与实现~

2025-03-17 15:04:22 732

原创 项目--五子棋(前置知识)

本文主要介绍五子棋项目的前置知识……

2025-03-16 09:45:34 1007

原创 日志模块实现

本文主要实现了常见的日志功能和对线程池的实现。

2025-01-16 10:59:40 1003

原创 微机原理期末复习(二)

8086微机原理期末复习(二)

2025-01-10 21:33:14 932

原创 微机原理期末复习(一)

8086微机原理期末复习(一)

2025-01-10 21:32:48 1220

原创 操作系统期末复习(题目)

期末操作系统复习记录

2025-01-10 21:32:04 339

原创 计算机网络期末复习(知识点)

本文是我在计算机网络期末复习时记录的知识点笔记

2025-01-10 21:30:41 2773

原创 计算机网络期末复习(题目)

本文是我计算机网络期末复习时记录的笔记

2025-01-10 21:29:38 888

原创 工程经济期末(二)

《工程经济与项目管理》期末复习记录二~

2024-12-31 10:33:55 1676

原创 工程经济期末(一)

《工程经济与项目管理》期末复习记录一~

2024-12-31 10:33:18 1580

原创 Ubuntu 20.04 卸载和安装 MySQL8.0

该文详细介绍了Ubuntu 20.04 卸载和安装 MySQL8.0的过程,通过一步步的介绍,帮助你完成MySQL的安装~

2024-12-20 21:26:00 2443

原创 Java基础--内部类和异常

异常(Exception)是在程序运行过程中出现的、打断正常程序流程的意外情况。例如,试图打开一个不存在的文件、进行除法运算时除数为0、数组越界访问等,这些情况都会导致异常的产生。除了使用Java自带的异常类,开发者还可以根据具体的业务需求自定义异常类,一般是继承自Exception类(如果是受检异常)或者类(如果是非受检异常)。throw new InvalidGradeException("成绩输入无效,成绩应在0到100之间");

2024-11-25 16:59:54 642

原创 Java基础--入门

输入类名后,创建完成。mainsout更改SDKFile -> Project Structure -> 左侧SDKsCtrl + N查看源码。如果没有搜索到,看一下是不是图中右侧是否选中呼出窗口,查找特定方法。

2024-11-25 16:57:38 1010

原创 Java基础--习题集(选择题)

Collection接口是所有集合类的顶级接口之一(另一个重要的顶级接口是Map,用于存储键值对形式的数据),它为各种具体的集合实现类(如ArrayList、LinkedList、HashSet等)提供了统一的操作规范,使得开发者可以用一致的方式来处理不同类型的集合,而不用关心具体的集合实现细节。在Java的内存模型中,数组元素在内存中是按照连续的顺序存储的,这样便于通过索引快速地访问数组中的各个元素,只需根据数组的起始地址以及元素类型的大小和索引值,就能快速定位到对应的元素位置,所以该描述。

2024-11-25 16:56:47 1408

原创 Java基础--类和对象

定义与用途抽象类是一个不能被实例化的类,它通常包含一些抽象方法(没有方法体的方法)和一些具体方法(有方法体的方法)。抽象类主要用于表示一种通用概念,并为子类提供通用的属性和方法。语法特点使用abstract关键字修饰类和方法。抽象类可以包含具体方法、抽象方法、成员变量、构造器、初始化块、静态方法、内部类等。一个类继承抽象类时,必须实现其所有未实现的抽象方法,除非这个子类也是抽象类。示例// 构造器// 抽象方法,没有方法体// 具体方法// 实现抽象方法@Override。

2024-11-25 16:55:02 1543

原创 Java基础--输入输出

在Java中,输入输出流用于实现程序与外部数据源(如文件、网络连接等)之间的数据传输。最基本的流类有字节流(输入流)和(输出流),以及字符流Reader(输入字符流)和Writer(输出字符流)。字节流以字节为单位处理数据,适用于各种二进制数据的读写;字符流则以字符为单位,更适合处理文本数据,尤其是涉及多字节字符(如汉字)的情况。

2024-11-25 16:54:41 1223

原创 Java期末考点(编程题)

Java期末考点,编程题

2024-11-25 16:53:28 944

原创 Java期末考点(概念)

Java期末考点,概念题

2024-11-25 16:52:45 887

原创 C++--特殊类的设计

本文详细介绍了C++中关于特殊类的设计。分别从以下几个方面进行介绍,如:为什么要设计该类?常见的哪些类会被设计成这样?如何实现该类(多种方案)?还介绍了单例模式,用饿汉模式和懒汉模式进行实现,还列举了一些它们各自的优缺点。希望对你学习如何实现一些特殊类有所帮助……

2024-10-09 18:05:26 1053

原创 C++--包装器std::function和绑定std::bind

本文详细介绍了C++中关于包装器std::function和绑定std::bind的使用。对于包装器std::function,分别从以下几个方面进行介绍:什么是std::function?如何使用?列举了常见的应用:回调函数、事件处理、作为函数参数和返回值、如何包装类成员函数……对于绑定std::bind,介绍了:什么是std::function?如何使用?列举了几个常见的应用:绑定普通函数、lambda表达式、成员函数。希望对你学习包装器std::function和绑定std::bind有所帮助……

2024-10-09 17:57:41 1828

原创 C++11--默认成员函数控制 && 模板的可变参数

本文详细介绍了C++11中关于默认成员函数控制和模板的可变参数。默认成员函数控制中先复习了一下几个默认成员函数以及它们的作用,之后介绍如何使用default和delete控制类默认成员函数的行为:生成还是删除。模板的可变参数中,先来复习一下C语言中如何实现的可变参数,然后再介绍模板的可变参数。此外还详细介绍了模板的可变参数的应用——emplace_back:介绍了其在哪些场景下才能提高效率、如何实现。最后介绍了模板的可变参数和统一初始化列表同时应用的一个易错点。希望对你学习C++11语法有所帮助……

2024-10-08 17:40:48 1463 2

原创 C++11--列表初始化和声明

本文详细介绍了C++11中关于初始化列表和声明。初始化列表中主要介绍各种类型如何使用{ }进行初始化,以及底层是如何做到的(也就是使用std::initializer_list)。声明中,主要介绍了几个关键字,如auto、decltype、nullptr、using和范围for的使用。此外还介绍了STL中的一些变化:STL新增容器、字符串转换函数、容器中新增的一些方法。最后介绍了在面试中,从哪些方面阐述C++11中的优缺点。希望对你学习C++11语法有所帮助……

2024-10-08 17:30:04 1094

原创 vscode 连接云服务器(ubantu 20.04)

如果云服务器上的系统不是。

2024-10-05 17:28:00 1776 4

原创 C++11--智能指针

本文详细介绍了C++智能指针,包括以下几点:为什么需要智能指针?什么是内存泄漏?智能指针使用的RAII思想是什么?标准库提供了哪些智能指针(auto_ptr、unique_ptr、shared_ptr和weak_ptr)?如何使用这些智能指针?其大致原理分别是什么?删除器如何使用和设计?为什么要使用make_shared?希望对你学习C++智能指针有一定帮助ヾ(≧▽≦*)o

2024-10-03 17:21:49 1486

原创 python基础语法--顺序结构

本文主要介绍了python中的顺序结构:if语句、break、continue和循环使用for、while。还有一些练习题目,帮助理解这些语句的使用和应用。

2024-09-29 10:28:24 1889

原创 C++ -- 异常

本文详细介绍了C++异常:什么是异常?为什么要使用异常?如何使用异常?异常的优缺点有哪些?

2024-09-28 20:09:12 959 1

原创 C++11 -- lambda表达式

本文对C++11中的lambda表达式进行讲解,其中内容包括:lambda表达式是用来解决什么问题的?如何使用?简单理解底层……

2024-09-26 21:30:32 1181

原创 define、typedef和using的使用

简单介绍 define、typedef和using的使用

2024-09-15 16:48:39 1177

原创 计组期末复习

本内容是我在计组期末复习时的记录,可能对你的复习帮助不大。不过里面有我推荐的视频,希望对你有一些帮助……

2024-07-04 11:23:54 1716

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除