自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (3)
  • 收藏
  • 关注

原创 算法入门(7)——简单搜索(1)

本文介绍了迷宫最短路径问题的两种搜索算法:深度优先搜索(DFS)和广度优先搜索(BFS)。DFS通过递归回溯探索所有可能路径,最终找到最短解,但效率较低;BFS通过队列按层次遍历,首次到达终点时即为最短路径,效率更高。两种算法的时间复杂度均为O(nm),适用于N×M网格的迷宫问题。文章包含算法原理、流程图解和C++代码实现,并通过具体示例演示了两种搜索过程。BFS由于能直接找到最短路径,更适合解决此类问题。

2026-08-05 21:30:27 161

原创 算法入门(6)——线性数据结构

本文介绍了四种基本线性数据结构及其特性:1)数组支持O(1)随机访问但插入/删除效率低;2)链表实现O(1)增删但需遍历访问;3)栈遵循LIFO原则,仅允许栈顶操作;4)队列采用FIFO机制,支持双端操作。通过对比表格展示了各结构在插入、删除、查询等操作的时间复杂度差异。文章包含C++代码示例(链表、栈、队列的实现),强调根据实际需求选择数据结构的重要性,为后续算法学习奠定基础。

2026-07-23 17:51:36 176

原创 算法入门(5)——递推与递归

本文介绍了算法中递推与递归的核心概念。递推通过已知信息逐步推导新信息,适用于阶乘求和等问题;递归则是函数自我调用,适用于斐波那契数列等递归定义的问题。文章通过阶乘求和、斐波那契数列等具体例题,展示了递推和递归的实现方法,并强调了终止条件的重要性。最后提供了两道递归练习题,帮助读者巩固所学内容。这两种思想是算法设计的基础,需要重点掌握。

2026-04-29 18:49:37 400

原创 算法入门(4)——初等数论基础(1)

算法竞赛里,数学题是并不少见的。有些题目甚至会把数学题和一些算法以一种不可思议的方式关联在一起,十分巧妙。因此,在学习更多的算法之前,数学是很有必要学习的。特别是数论部分的内容将会频繁出现。注:接下来我们对初等数论的研究将会聚焦自然数部分。任意一个大于 111 的正整数,除自身和 111 外,都有 ≥0\ge0≥0 个因数,这是我们小学就学过的内容。因数又称约数,指能整除某整数的非零整数。若整数 nnn 可被整数 mmm 整除(记作 m∣nm|nm∣n),则称 mmm 是 nnn 的因数,nnn 称为

2026-02-20 21:08:41 635

原创 算法入门(3)——二分法

二分”是大部分算法学习者最早学习的算法。二分的思想将会频繁出现在各种题目里,是很重要的一种算法。因此本篇文章我们单独开一篇来讲解二分法。二分法是一种常见的算法,它分为二分查找和二分答案。二分查找能在一些特定情况(下文将解释是什么样的特定情况)下在数组中以Olog⁡nO(\log n)Ologn的时间快速找到一个特定元素,作为对比,暴力查找(遍历数组查找)的时间复杂度是OnO(n)On的。

2026-02-11 21:29:15 870

原创 算法入门(2)——模拟、状态机

状态读入’-’读入’.’读入数字1. 确定符号322. 整数部分423.(负)整数部分434. 小数部分4注:数字表示转移到的状态编号,表示不存在此转移,表格只描述转移,而不描述每种情况应该执行的操作。得到如下流程图:fill:#333;important;important;fill:none;color:#333;color:#333;important;fill:none;fill:#333;height:1em;数字数字数字数字其他字符/结束开始。

2026-02-07 00:24:26 746

原创 算法入门(1)——程序结构

算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间,空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。

2026-02-02 13:45:42 660

原创 Java从入门到小有所成

Java是一门面向对象的编程语言。它可以与C++相媲美,且比起C++更像是面向对象的语言。它是一门编译型语言,相比于解释型语言(如Python)来说运行速度更快。它连续多年成为最受欢迎的语言,是名副其实的“老大哥”。……到这里,Java的基础你已经学会了。当然后面的路还有很长,敬请期待我的续作吧!

2023-07-28 12:12:31 547

原创 IDEA 控制台输出中文乱码的简单解决方案

控制台乱码了?是JDK版本不对,如果你的JDK是18及以上,进来看看,或许对你有帮助!

2023-03-12 17:10:07 6428 3

原创 C++0基础教程

C++的0基础教程

2022-08-31 11:36:56 4062 1

alien_invasion.py

一个小游戏,请下载我上传的WAV文件和Ogg文件

2020-08-01

第三方程序用法.exe

讲解了random,turtle,time的用法,虽然不是很详细,但是把random所有函数讲了一遍,time讲了最常用函数。后面还会更新matplotlib。

2020-07-11

第三方程序用法.exe的.pyc(附属)

讲解了random,turtle,time的用法,虽然不是很详细,但是把random所有函数讲了一遍,time讲了最常用函数。后面还会更新matplotlib。

2020-07-11

空空如也

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

TA关注的人

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