自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Unity的Transform类

从子对象中找到某个对象(可以找到非激活的对象)游戏对象的世界坐标以(0, 0, 0)为原点。6.localRotation 本地四元数。10.Translate 朝给定的方向平移。该对象的前方(本地坐标系z轴的指向)5.rotation 相对世界四元数。15.root 该游戏对象的根对象。使游戏对象Z轴朝向给定的点。绕给定的点和给定的轴旋转。本地坐标,相对父物体坐标。

2025-01-13 21:04:45 304

原创 Unity初识

2025-01-03 22:45:21 139

原创 堆排序&基数排序&高级排序算法效率比较

利用大根堆的堆顶元素是所有元素中最大的性质排序的。

2024-11-03 21:01:16 446 2

原创 数据结构 ━ 堆

堆(heap)分为二叉堆、二项式堆、斐波那契堆,堆是非线性数据结构,相当于一维数组,有两个直接后继。堆又被称为优先队列,尽管名为优先队列,但堆并不是队列。因为队列遵循First in, First out,但是堆是按照元素的优先级取出元素。所以“堆”是实现调度器的理想数据结构。堆排序与快速排序、归并排序一样都是时间复杂度为O(N*logN)的排序方法。

2024-11-03 20:09:12 576

原创 排序算法 ━ 进阶篇

思想(递归):选取一个基准数,把小于基准数的数放在左边,大于基准数的数放在右边,然后分别对左右的数重复该操作,直到整个序列变成有序的循环条件:L < R1.选取基准数val = arr[L]2.从R开始找第一个 < val的数,放到L的位置,L++3.从L的位置开始往后找第一个 > val的数,放到R的位置,R--4.对基准数两边的序列重复以上操作快速排序优化:1.随着快排算法执行,数据越来越趋于有序,在一定范围内,可采用插入排序代替。

2024-10-29 11:44:42 712

原创 排序算法 ━ 基础篇

插入排序的效率最好,尤其是在数据已经趋于有序的情况下,采用插入排序效率最高。一般中等数据量的排序都用希尔排序,选择合适的增量序列,效率就已经不错了,如果数据量比较大, 可以选择高级的排序算法,如快速排序。

2024-10-28 20:52:29 842

原创 二分搜索查找元素

二分查找算法(Binary Search Algorithm)是一种在有序数组中查找特定元素的搜索算法。它的基本思想是将目标值与数组中间元素进行比较,如果目标值等于中间元素,则查找成功;如果目标值小于中间元素,则在数组的左半部分继续查找;如果目标值大于中间元素,则在数组的右半部分继续查找。通过这种“折半”的方式,每次查找都将搜索范围缩小一半,从而提高查找效率。

2024-10-28 12:45:10 439

原创 数据结构之队列

队列是一种操作受限的线性表,队列只允许在表的一端进行插入,在表的另一端进行删除。可进行插入的一段称为队尾,可进行删除的一端称为队头。队列的主要特点就是先进先出。依照存储结构可分为:顺序队和链式队。

2024-10-26 21:51:41 815

原创 双向循环链表的实现

特点: 每一个节点除了数据域,还有next指针域指向下一个节点,pre指针域指向前一个节点 头节点的pre指向末尾节点,末尾节点的next指向头节点。构造函数与双向链表不同的是,需要将p->next->pre指向头结点,并且循环结束条件是p!构造函数与双向链表不同的是,需要将头结点的next指向头结点,头结点的pre指向头结点。除了循环结束条件(p!= this->head) ,其他和双向链表一致。= this->head) ,其他和双向链表一致。尾插元素不需要找尾结点,头结点的pre就指向尾结点。

2024-10-24 13:21:21 281

原创 单向循环链表的实现及相关算法

先让头结点指向p->next,再回收p指向的结点内存,回收完后,将p重新指向头结点的下一个结点,循环该过程,直到p指向头结点,退出循环后最后回收头结点指向的内存空间。创建一个新结点,将该结点的next指向头结点的next,头结点的next指向新结点,还需要判断原来的链表存不存在有效结点,不存在的话需要将尾结点重新更新指向成tem。创建一个新结点,用指针tem维护,将该结点的next指向头结点,将之前的尾结点的next指向新结点,并更新尾结点的指向为tem。

2024-10-24 13:18:01 689

原创 单向链表的理解及相关算法

让p指向头结点的下一结点,并将链表头结点置空,q指向p->next,遍历链表,先将p->next保存在q中,再将其头插到head中,将保存的地址q重新赋值给p,循环上述过程,直到p指向nullptr退出循环,完成了单链表逆序。先创建一个指针指向头结点,遍历链表,让头节点指向它的下一个结点,回收p指向的内存空间,此时p就成了野指针,需要将其重新指向头结点,直到p为nullptr时,循环结束。这里删除后,不直接return,而是将p重新指向q指向的结点的下一个结点,否则p为野指针,继续操作会导致程序崩溃。

2024-10-24 13:13:06 498

原创 动态数组的实现及相关算法

创建两个指针,p指向首地址,q指向数组尾元素地址,交换二者的值,之后,p向右移动一个元素位置,q向左移动一个元素位置,循环上述过程,直到p越过了q,循环结束,此时完成了逆序。循环以上过程,直到p越过了q,循环结束,最终所有值为value的元素在数组的最左边,p地址往后的元素里就没有值为value的元素了,返回该地址。也是一样,先判断传入位置的有效性,再将该位置往后的所有元素向前挪动一个位置,此时被删除的元素被后面的元素所覆盖掉了,容纳数减一。创建两个变量,p等于数组首索引值,q等于数组尾索引值。

2024-10-24 13:08:50 515

原创 栈的理解及相关算法

栈(Stack):是只允许在一端进行插入或删除的线性表。首先栈是一种线性表,但限定这种线性表只能在某一端进行插入和删除操作。栈顶(Top):线性表允许进行插入删除的那一端。栈底(Bottom):固定的,不允许进行插入和删除的另一端。空栈:不含任何元素的空表。栈又称为后进先出(Last In First Out)的线性表,简称LIFO结构。

2024-10-24 13:02:25 2000

原创 线性表的基础概念及其相关算法

本文章将会阐述动态数组、链表的实现过程以及相关的算法线性表,数据结构中最简单的一种存储结构,专门用于存储逻辑关系为"一对一"的数据。线性表,基于数据在实际物理空间中的存储状态,又可细分为顺序表(顺序存储结构)和链表(链式存储结构)。是数据结构的基础。

2024-10-19 21:13:27 1701

原创 基于Easyx的打字游戏

基于链表的数据结构,接受到玩家交互返回的指令后,对链表上的萝卜对象增删,以及萝卜对象的行为实现。

2024-10-12 16:41:48 1759

原创 数据结构与算法的基本概念

算法是特定问题求解步骤的描述,在计算机中表现为指令的有限序列,算法是一种独立存在的解决问题的思想和方法对于算法而言,编程语言不重要,重要的是思想。

2024-10-11 22:05:39 688 2

空空如也

空空如也

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

TA关注的人

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