- 博客(164)
- 收藏
- 关注
原创 JavaScript实现进制相互转换
/ 自定义进制转换函数// 其他进制转换成十进制// 十进制转换成其他进制// 使用自定义函数进行转换// 二进制// 二进制 转换为 十六进制// 输出 "2a"
2024-06-03 22:33:51
596
3
原创 053. 高矮个子排队[100 分]
现在有一队小朋友,他们高矮不同,我们以正整数数组表示这一队小朋友的身高,如数组{5,3,1,2,3}。我们现在希望小朋友排队,以"高"“矮”“高”“矮"顺序排列,每一个"高"位置的小朋友要比相邻的位置高或者相等;每一个"矮"位置的小朋友要比相邻的位置矮或者相等;要求小朋友们移动的距离和最小,第一个从"高"位开始排,输出最小移动距离即可。例如,在示范小队{5,3,1,2,3}中,{5,1,3,2,3}是排序结果。
2024-04-28 07:33:38
195
原创 052. 分积木[200 分]
Solo 和 koko 是两兄弟,妈妈给了他们一大堆积木,每块积木上都有自己的重量。现在他们想要将这些积木分成两堆。哥哥 Solo 负责分配,弟弟 koko 要求两个人获得的积木总重量’相等’(根据 koko 的逻辑),个数可以不同,不然就会哭,但 koko 只会先将两个数转成二进制再进行加法,而且总会忘记进位(每个进位都会忘记)。如当 25(11101)加 11(1011)时,koko 得到的计算结果是 18(10010):11001+0101110010。
2024-04-28 07:32:28
83
原创 051. 字符串变换最小字符串[100 分]
给定一个字符串 s,最多只能进行一次变换,返回变换后能得到的最小字符串(按照字典序进行比较)。变换规则:交换字符串中任意两个不同位置的字符。
2024-04-28 07:31:11
81
原创 050. 寻找身高相近的小朋友[100]
小明今年升学到小学一年级,来到新班级后发现其他小朋友们身高参差不齐,然后就想基于各小朋友和自己的身高差对他们进行排序,请帮他实现排序。
2024-04-27 22:31:27
92
原创 049. 目录删除[200 分]
某文件系统中有 N 个目录,每个目录都有一个独一无二的 ID。每个目录只有一个父目录,但每个父目录下可以有零个或者多个子目录,目录结构呈树状结构。假设,根目录的 ID 为 0,且根目录没有父目录,其他所有目录的 ID 用唯一的正整数表示,并统一编号。现给定目录 ID 和其父目录 ID 的对应父子关系表[子目录 ID,父目录 ID],以及一个待删除的目录 ID,请计算并返回一个 ID 序列,表示因为删除指定目录后剩下的所有目录,返回的 ID 序列以递增序输出。
2024-04-27 22:28:30
50
原创 047. 计算疫情扩散时间[200 分]
在一个地图中(地图由 n*n 个区域组成),有部分区域被感染病菌。感染区域每天都会把周围(上下左右)的 4 个区域感染。请根据给定的地图计算,多少天以后,全部区域都会被感染。如果初始地图上所有区域全部都被感染,或者没有被感染区域,返回-1。
2024-04-27 22:21:49
68
原创 044. 计算堆栈中的剩余数字[200 分]
为了充分发挥 GPU 算力,需要尽可能多的将任务交给 GPU 执行,现在有一个任务数组,数组元素表示在这 1 秒内新增的任务个数且每秒都有新增任务。假设 GPU 最多一次执行 n 个任务,一次执行耗时 1 秒,在保证 GPU 不空闲情况下,最少需要多长时间执行完成。
2024-04-14 17:46:16
158
原创 代码随想录算法训练营 015| 101.对称二叉树,102.二叉树的层序遍历, 226.翻转二叉树
【代码】代码随想录算法训练营 015| 101.对称二叉树,102.二叉树的层序遍历, 226.翻转二叉树。
2023-06-08 23:55:00
183
原创 代码随想录算法训练营 014| 94. 二叉树的中序遍历,144. 二叉树的前序遍历,145. 二叉树的后序遍历
中序遍历是左中右, 先访问的是二叉树顶部的节点, 然后一层一层向下访问, 直到到达树左面的最底部, 再开始处理节点(也就是在把节点的数值放进 result 数组中), 这就造成了处理顺序和访问顺序是不一致的。先序遍历是中左右, 后续遍历是左右中, 那么我们只需要调整一下先序遍历的代码顺序, 就变成中右左的遍历顺序, 然后再反转 result 数组, 输出的结果顺序就是左右中了。前序遍历是中左右, 每次先处理的是中间节点, 那么先将根节点放入栈中, 然后将右孩子加入栈, 再加入左孩子。
2023-05-19 08:04:56
372
原创 代码随想录算法训练营013| 239. 滑动窗口最大值,347. 前 K 个高频元素[TODO]
【代码】代码随想录算法训练营012| 239. 滑动窗口最大值,347. 前 K 个高频元素[TODO]
2023-05-19 00:36:58
388
原创 代码随想录算法训练营011| 20. 有效的括号,150. 逆波兰表达式求值,1047. 删除字符串中的所有相邻重复项
逆波兰表达式严格遵循「从左到右」的运算。c. 如果编译器中的括号是左括号,我们就入栈(左括号不用检查匹配);如果是右括号,就取出栈顶元素检查是否匹配。可以把字符串顺序放到一个栈中,然后如果相同的话 栈就弹出,这样最后栈里剩下的元素都是相邻不相同的元素了。a. 首先,我们通过上边的例子可以分析出什么样子括号匹配是复合物条件的,两种情况。整个逆波兰表达式遍历完毕之后,栈内只有一个元素,该元素即为逆波兰表达式的值。b. 然后,我们将这些括号自右向左看做栈结构,右侧是栈顶,左侧是栈尾。d. 如果匹配,就出栈。
2023-05-18 23:25:48
335
原创 代码随想录算法训练营010| 225. 用队列实现栈,232.用栈实现队列
一个队列在模拟栈弹出元素的时候只要将队列头部的元素(除了最后一个元素外) 重新添加到队列尾部,此时再去弹出元素就是栈的顺序了。
2023-05-18 07:51:53
118
原创 代码随想录算法训练营009|28.实现 strStr(),459.重复的子字符串[TODO]
【代码】代码随想录算法训练营 009|28.实现 strStr(),459.重复的子字符串[TODO]
2023-05-17 21:38:16
94
原创 JavaScript数据结构与算法002|数据结构基础
链表是一种链式数据结构, 由若干节点组成, 每个节点包含指向下一节点的指针。链表的物理存储方式是随机存储, 访问方式是顺序访问。查找链表节点的时间复杂度是 O(n), 中间插入、删除节点的时间复杂度是 O(1)。链表(linked list)是一种在物理上非连续、非顺序的数据结构,由若干节点(node)所组成。
2023-04-26 23:09:11
1932
原创 代码随想录算法训练营008|151.翻转字符串里的单词,344.反转字符串,541.反转字符串II,剑指Offer 05.替换空格
代码随想录算法训练营
2022-11-03 22:18:47
307
原创 代码随想录算法训练营004| 19.删除链表的倒数第N个节点,24. 两两交换链表中的节点,142.环形链表II,面试题 02.07. 链表相交
代码随想录算法训练营
2022-10-31 16:02:55
225
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人