
数据结构练习题
文章平均质量分 59
本栏目主要记录博主再学习数据结构期间一些较为经典的数据结构的题目。
囚徒玩电脑
努力敲代码,争取早日退休
展开
-
数据结构练习题:有效的括号
就是内存泄露的问题,在每次直接return false的时候,都有可能导致内存泄漏,所以需要使用STDestroy(&st)。但是如果使用 ==,即使正确,但是有其他的括号需要判断,所以我们改为用!由于我刚进行了栈的学习,对于OJ题,我准备先复制粘贴我写的栈的相关程序,来完成这道题目。但是有一个问题就是,咱们最初学习的栈的STDataType是int类型,现在我们要把int改为char。但其实还是存在问题的,这是属于数量的问题,我们可以想到使用STEmpty函数来判断数量是否匹配,即。原创 2023-10-31 13:05:33 · 62 阅读 · 0 评论 -
数据结构练习题:轮转数组
思路二:用空间换时间,开额外数组(将k个元素挪动到新数组中),再将原数组剩余的拷贝到新数组中。首先在完成这个题目之前,我们先来捋捋自己的思路,来看看哪些是最优算法,假设 nums = [ 1,2,3,4,5,6,7 ],k = 3。右旋 1 次, [ 7,1,2,3,4,5,6 ]右旋 2 次, [ 6,7,1,2,3,4,5 ]右旋 3 次, [ 5,6,7,1,2,3,4 ]时间复杂度:O(N^2)时间复杂度:O(N)空间复杂度:O(1)空间复杂度:O(1)时间复杂度:O(N)空间复杂度:O(N)原创 2023-09-03 10:16:50 · 70 阅读 · 0 评论 -
数据结构习题篇:消失的数字
的所有整数,但其中缺了一个。首先在完成这个题目之前,我们先来捋捋自己的思路,来看看哪些是最优算法,时间复杂度小,值得我们实现。思路一:排序+遍历(后一个数字等于前一个数字加一,若不等于,那后一个数字就是消失的数字)本道题的讲解就到此结束啦,大家有什么疑问,欢迎在评论区评论或者私信我!思路二:用等差数列计算0~N的和,再依次减去数组内的值,结果就是消失的数字。这种方法的复杂度太高,没有实现的必要,因此放弃该思路。异或:^ ——对应二进制位相同为0,相反为1。时间复杂度:O(N * N)时间复杂度 :O(N)原创 2023-09-01 10:27:40 · 81 阅读 · 1 评论