算法学习
算法学习过程中的各种题目以及自己所写出的代码,心得体会
HLHL0315
这个作者很懒,什么都没留下…
展开
-
算法学习笔记——单链表的排序(PriorityQueue)
Java PriorityQueue类是一种队列数据结构实现,其中根据优先级处理对象。它与遵循FIFO(先进先出)算法的标准队列不同。原创 2023-04-18 09:29:37 · 143 阅读 · 0 评论 -
算法学习笔记——树的简介
B-树、B+树简介B-树简介B-树,也称为B树,是一种平衡的多叉树(可以对比一下平衡二叉查找树),它比较适用于对外查找。转载 2023-04-18 08:25:08 · 159 阅读 · 0 评论 -
算法学习笔记——字符串解码
给定一个经过编码的字符串,返回它解码后的字符串。原创 2023-04-04 17:30:51 · 115 阅读 · 0 评论 -
算法学习笔记——最长无重复子数组(滑动窗口)
给定一个长度为n的数组arr,返回arr的最长无重复元素子数组的长度,无重复指的是所有数字都不相同。原创 2023-04-03 20:28:00 · 65 阅读 · 0 评论 -
算法学习笔记——链表中的节点每k个一组翻转
将给出的链表中的节点每 k个一组翻转,返回翻转后的链表如果链表中的节点数不是 k 的倍数,将最后剩下的节点保持原样你不能更改节点中的值,只能更改节点本身。原创 2023-04-02 00:20:57 · 68 阅读 · 0 评论 -
算法学习笔记——链表内指定区间反转
将一个节点数为 size 链表 m位置到n 位置之间的区间反转,要求时间复杂度O(n),空间复杂度 O(1)。原创 2023-04-01 23:06:43 · 105 阅读 · 0 评论 -
算法学习笔记——链表
链表(linked list):是一种物理存储结构上非连续存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的.原创 2023-03-30 19:27:10 · 63 阅读 · 0 评论 -
算法学习笔记——购物单
王强决定把年终奖用于购物,他把想买的物品分为两类:主件与附件,附件是从属于某个主件的,下表就是一些主件与附件的例子原创 2023-03-30 11:15:08 · 201 阅读 · 0 评论 -
算法学习笔记——01背包问题
一共有N件物品,第i(i从1开始)件物品的重量为w[i],价值为v[i]。在总重量不超过背包承载上限W的情况下,能够装入背包的最大价值是多少?原创 2023-03-29 09:32:33 · 83 阅读 · 0 评论 -
算法学习笔记——动态规划
动态规划,是一种在数学、管理科学、计算机科学、经济学和生物信息学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。动态规划常常适用于有重叠子问题和最优子结构性质的问题。原创 2023-03-27 19:34:30 · 150 阅读 · 0 评论 -
算法学习笔记——质数因子
功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为22335)原创 2023-03-26 23:29:27 · 45 阅读 · 0 评论 -
算法学习笔记——明明的随机数
明明生成了N个1到500之间的随机整数。请你删去其中重复的数字,即相同的数字只保留一个,把其余相同的数去掉,然后再把这些数从小到大排序,按照排好的顺序输出。原创 2023-03-26 23:28:45 · 189 阅读 · 0 评论 -
算法学习笔记——使数组中所有元素都等于零
给你一个非负整数数组 nums 。在一步操作中,你必须:选出一个正整数 x ,x 需要小于或等于 nums 中 最小 的 非零 元素。nums 中的每个正整数都减去 x。返回使 nums 中所有元素都等于 0 需要的 最少 操作数。原创 2023-02-24 16:26:30 · 176 阅读 · 0 评论 -
算法学习笔记——删除链表的倒数第 N 个结点
给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。原创 2023-02-24 10:55:56 · 46 阅读 · 0 评论 -
算法学习笔记——链表的中间结点
给你单链表的头结点 head ,请你找出并返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。原创 2023-02-24 10:20:09 · 113 阅读 · 0 评论 -
算法学习笔记——反转字符串中的单词 III
给定一个字符串 s ,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。原创 2023-02-24 10:14:12 · 58 阅读 · 0 评论 -
算法学习笔记——反转字符串
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。原创 2023-02-24 09:07:53 · 46 阅读 · 0 评论 -
算法学习笔记——两数之和 II - 输入有序数组
给你一个下标从 1 开始的整数数组 numbers ,该数组已按 非递减顺序排列 ,请你从数组中找出满足相加之和等于目标数 target 的两个数。原创 2023-02-24 02:28:28 · 54 阅读 · 0 评论 -
算法学习笔记——移动零
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。原创 2023-02-24 01:58:49 · 37 阅读 · 0 评论 -
算法学习笔记——轮转数组(带数组复制/拷贝方法)
给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。原创 2023-02-24 01:49:06 · 50 阅读 · 0 评论 -
算法学习笔记——有序数组的平方
给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。原创 2023-02-23 11:46:04 · 48 阅读 · 0 评论 -
算法学习笔记——搜索插入位置(二分查找)
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。原创 2023-02-23 10:46:52 · 103 阅读 · 0 评论 -
算法学习笔记——第一个错误的版本(二分查找)
假设你有 n 个版本 [1, 2, ..., n],你想找出导致之后所有版本出错的第一个错误的版本。原创 2023-02-23 10:19:09 · 35 阅读 · 0 评论 -
算法学习笔记——二分查找
二分查找(Binary Search)算法,也叫折半查找算法。二分查找的思想非常简单,有点类似分治的思想。二分查找针对的是一个有序的数据集合,每次都通过跟区间的中间元素对比,将待查找的区间缩小为之前的一半,直到找到要查找的元素,或者区间被缩小为 0。原创 2023-02-22 19:47:11 · 84 阅读 · 1 评论