自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Git基础及常用命令

Git基础操作指南摘要 本文介绍了Git版本控制系统的基础操作,包括: 仓库初始化与克隆 文件状态跟踪与管理(add/commit/rm/mv) 查看提交历史与差异(log/diff) 撤销修改与版本回退 远程仓库操作(fetch/push/pull) 标签管理(创建/共享/检出) Git命令别名设置 重点命令包括git init/clone、git add/commit、git status/log、git remote等。文章详细说明了文件状态跟踪、提交更新、版本比较等核心概念,并提供了实用的操作示例和

2025-12-23 13:45:00 862

原创 堆排序--自学笔记

堆排序是一种基于完全二叉树结构的排序算法,通过构建大顶堆或小顶堆实现排序。其核心思想是:1)将数组视为完全二叉树并构建大顶堆;2)取出堆顶元素后调整剩余元素重建堆;3)循环执行直到完成排序。算法实现包括初始化堆、堆化处理和交换元素等步骤。堆排序的时间复杂度为O(nlogn),其中建堆O(n),重建堆O(nlogn),空间复杂度O(1)。该算法适用于处理大规模数据,也可用于解决"数组中第K大元素"等问题。

2025-12-22 15:24:05 215

原创 希尔排序--自学笔记

希尔排序是一种改进的插入排序算法,通过分组插入排序和逐步缩小间隔来提高效率。其核心思想是将数组按增量序列分组进行插入排序,最终实现整体有序。增量序列的选择直接影响排序效率,常见的有Hibbard、Knuth和Sedgewick序列。希尔排序的时间复杂度介于O(n)到O(n²)之间,最优可达O(n^1.3),空间复杂度为O(1)。其高效性在于能通过远距离交换消除多个逆序对。

2025-12-21 14:32:24 833

原创 插入排序--自学笔记

本文介绍了插入排序算法及其实现方法。插入排序的思想类似于整理扑克牌,通过将未排序元素逐个插入到已排序序列的正确位置来完成排序。文章展示了两种实现方式:移动法(保存当前值后移动元素)和交换法(通过交换相邻元素实现)。两种方法的时间复杂度均为O(n²),空间复杂度为O(1)。最后提供了力扣上链表插入排序的练习题链接。该算法适合小规模数据排序,实现简单但效率较低。

2025-12-18 13:45:49 201

原创 选择排序--自学笔记

本文介绍了选择排序算法及其优化版本二元选择排序。选择排序通过双重循环遍历数组,每轮找到最小/最大值进行交换。二元选择排序同时寻找最小和最大值,减少比较次数。文章对比了冒泡排序和选择排序的异同,分析了两者的时间/空间复杂度均为O(n²)和O(1),并指出选择排序减少了交换次数但不稳定。最后讨论了排序算法稳定性的应用场景,即需要保持相同元素原始顺序的情况。

2025-12-17 14:44:46 346

原创 冒泡排序--自学笔记

本文介绍了冒泡排序算法的基本思想和三种实现方法。冒泡排序通过比较相邻元素并交换,使最大值/最小值冒泡到数组末尾。文章详细讲解了三种写法:基础版本、优化版本(提前终止)和进一步优化版本(记录最后交换位置)。分析指出冒泡排序的时间复杂度为O(n²),空间复杂度为O(1),优化虽能提升性能但无法改变其复杂度等级。

2025-12-10 17:07:51 242

原创 C语言 PTA 凯撒密码

可能最后会漏掉一个“全部是字母”的测试点,是因为向右偏移可能会导致ASC码值溢出,就是比如z是122,而最高是127,只要向后加6就溢出的,我的解决办法是统一左移,详情请看代码注释。

2023-11-10 18:23:48 1872 2

原创 C语言 PTA 出生年

运用数组下标来计数的方法即可解决,详情请看代码注释。

2023-11-10 18:03:24 1074 1

原创 PTA C语言 整除光棍

以竖式计算除法的角度来看,会超时是因为进行了大量重复的运算,而本题就可模拟竖式计算来实现较大数字的计算,同时在s很大时超出整型的空间时,就可选择一个数字一个数字地输出。

2023-10-28 12:44:48 180

原创 PTA C语言 前世档案

因为发现结论总数为2的N次方个,以二分的思想每选择一次都会砍掉一半的结论来设计代码。

2023-10-28 11:15:30 888

原创 C语言 PTA 使用函数求余弦函数的近似值

因单独计算x乘方以及分母的阶乘导致超时,而仔细观察公式,每次都是在上一次的基础上。*(-1)*x平方/i*(i-1),每次只需要让i+=2。可能会存在的运行超时问题,下面是我的1.0版本。

2023-10-26 18:38:20 516 1

原创 PTA C语言 水仙花数

超时原因可能为pow函数大量使用,其本身在设计时考虑了多种情况,运行速度减慢,可以自己写一个简易版pow函数。

2023-10-25 22:23:50 608

原创 PTA C语言 天使赛的善良

对初学者来说一次性较难拿满分,注意各分支的考虑。输入的数字可能全相同,也可能前部分全相同,需考虑n(新输入的)与最大值或最小值是否相等,还是同时相等,以此来计数。

2023-10-19 16:36:23 88

空空如也

空空如也

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

TA关注的人

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