Loading

摘要: 题目描述 思路 这些链表的有序性使这些操作都不难写。 前面在数组的题目里写过跳过重复元素的算法,这个和那个类似,用快慢指针写,但是由于这个是删除重复元素,所以我用了两个相邻的慢指针,左边的慢指针其实是为了保存真正的慢指针的上一个位置。 代码如下: class Solution { public: L 阅读全文
posted @ 2024-02-24 23:28 SaTsuki26681534 阅读(41) 评论(1) 推荐(0)
摘要: 题目描述 思路 首先用双指针法向后移动,分别获取链表的最后一个结点和倒数第k的结点,再把这部分连接到链表的头部即可,这部分的操作并不难。 但是实际这样写了之后就会发现,如果链表的长度小于k的话,这样的操作就是行不通的,需要对这种情况进行特殊处理。 但是在处理过程中发现这个操作有这样的特点:当链表长度 阅读全文
posted @ 2024-02-24 22:43 SaTsuki26681534 阅读(33) 评论(0) 推荐(0)
摘要: 题目描述 分析 这道题实际的解法是要通过递归来写,由于链表的特性:链表的任何一个子表都是链表。所以很多链表的算法用递归来写会非常简便。这里先尝试着写一下非递归的算法,再写一遍递归的算法。 非递归: class Solution { public: // void Insert(ListNode* n 阅读全文
posted @ 2024-02-24 20:22 SaTsuki26681534 阅读(35) 评论(1) 推荐(0)
摘要: #### 1.特征值和特征向量 **特征值和特征向量的定义:** 对于n阶矩阵A,如果存在一个数λ以及非零n维列向量α,使得 **Aα = λα** 成立 则称λ是矩阵A的一个**特征值**。非零向量α是**矩阵A属于特征值的一个特征向量**。 >这个式子可以写成**(λE-A)α = 0,α≠0* 阅读全文
posted @ 2023-08-23 20:10 SaTsuki26681534 阅读(3654) 评论(0) 推荐(1)
摘要: 外部排序不会考算法设计,考相关的概念和排序方法过程等。 #### 1.外部排序的基本概念 外部排序是指对于记录很多的大文件进行排序时,无法将其完全复制进内存中进行排序,因此需要将外存中的待排记录一部分一部分地调入内存中进行排序,在排序过程中需要进行多次内存外存之间的交换,这种排序方法就称为外部排序。 阅读全文
posted @ 2023-08-22 16:23 SaTsuki26681534 阅读(260) 评论(0) 推荐(0)
摘要: #### 1.简单复习一下前面学到的排序算法 **三种插入排序:** **直接插入:** 依次将后面无序序列中头部的元素插入前面的有序序列中(找到插入位置,这个位置后面的元素一律后移) **折半插入:** 相比直接插入只是用折半查找的方式查找插入位置,元素的移动操作不变 **希尔排序:** 把相隔一 阅读全文
posted @ 2023-08-21 22:14 SaTsuki26681534 阅读(225) 评论(0) 推荐(0)
摘要: #### 1.归并排序 归并排序中的"归并"的意义就是把多个有序表合并为一个新的有序表。 **算法思想:** 二路归并排序:初始情况下将长度为n的待排序表分为n个子表,则每个子表的长度为1,是有序的。每趟排序尽量将这些子表按位置相邻两两归并,重复直到合并为一个长度为n的有序表为止。 具体实现: ![ 阅读全文
posted @ 2023-08-20 20:06 SaTsuki26681534 阅读(137) 评论(0) 推荐(0)
摘要: 选择排序的基本思想是每次从待排序的序列中选出最小值(或者最大值)依次放在已排序序列中,直到待排序序列为空,此时序列已完全有序。选择排序的选择只需要进行n-1趟,因为当剩余元素数量为1时无需再选择,直接放在排序序列的末尾即可。 在这里学简单选择排序和堆排序两种算法,简单选择考的不多,堆排序是考察重点。 阅读全文
posted @ 2023-08-17 22:20 SaTsuki26681534 阅读(135) 评论(0) 推荐(0)
摘要: #### 1.如何求齐次方程组的基础解系 前面已经学过: 基础解系的定义为:一个向量组中**所有的向量都是原方程的解**,并且**线性无关**,又**能由这个向量组线性表出这个方程组的所有解**。 先讲齐次方程组是因为它右侧常数都为0,解起来更为简单。 步骤:先对齐次方程组的系数矩阵作初等行变换,直 阅读全文
posted @ 2023-08-15 21:19 SaTsuki26681534 阅读(23339) 评论(1) 推荐(0)
摘要: 交换排序就是基于比较交换的排序。 主要讲两种交换排序算法:**冒泡排序和快速排序**。 冒泡排序比较简单一般不会单独考察,重点考察的是快速排序的内容。 #### 1.冒泡排序 **基本算法思想:** 对于每趟排序,从后往前两两比较,如果为逆序则进行交换,这样很显然不能一趟就得到正确的序列,但是每次都 阅读全文
posted @ 2023-08-15 17:11 SaTsuki26681534 阅读(134) 评论(0) 推荐(0)