顺序表小补充

1. 时间复杂度

我们顺序表在插入和删除元素的时候,时间复杂度又该怎么变化呢?

1.1 插入的时间复杂度

这里我们使用的就是位序,我们以后遇到一定要记得位序是从1开始的;顺序表的插入我们可以分为最好,最坏,平均情况,平均情况的时间复杂度也是O(n)。

1.2 删除的时间复杂度

我们再删除的时候,删除的概率是1/n,因为我们一共有n个元素,那我们可以插入的地方就有n+1个这就是为什么我们插入的概率是1/(n+1)。

1.3 查找的时间复杂度

1.3.1 下标查找的时间复杂度

我们可以直接找到下标下的值。

1.3.2 按值查找的时间复杂度

像这种时间复杂度我们知道怎么做到就很好算了,我们前面的按值找查找就是使用一个简单的循环,一层循环时间复杂度就是O(n)。

2. opencode完成unit testing(单元测试)

我们在需要进行单元测试的路径下打开opencode,询问一下单元测试有啥用。

单元测试是对软件中最小可测试单元(函数、方法、类)进行验证的自动化测试。每个测试独立验证一个功能单元在给定输入下是否产生预期输出。

我们做单元测试就是对我们的代码进行查漏补缺,可以帮我们优化自己的代码。

但是我们在做单元测试的时候,又可以定义使用那种框架来测试。

我们让它来推荐一种框架,我们使用那个框架来进行单元测试。

我们这里选用google的gtest,这个我们后续的数据结构项目也是使用的这个框架进行unit testing,而且这也是公司常用的框架。

执行完成之后,我们要将测试项目先设为启动项目

设为启动项目之后,运行起来就看到测试结果了

如果出现了,红色说明程序有错误,我们同样可以借助opencode来修改我们的程序。

3. opencode实现增删查改菜单功能

我们直接在下项目的路径下,依旧打开opnecode

我们现在Plan的情况下实现程序设计,执行完成之后,如需微调也可以通过这种方式来调整。

4. 总结

我们将opencode用到实际的项目中,这样可以让我们能够更快的上手opencode,并且这里介绍了unit testing单元测试,我们以后在项目中都是要些unit testing 的我们这里可以提前使用了解一下。

相关推荐
Bshaya_32 分钟前
红黑树详解:概念、规则与插入实现
数据结构·红黑树·二叉搜索树·平衡树·插入逻辑
WBluuue1 小时前
数据结构与算法:分块(一):块状数组、块状链表
数据结构·c++·算法·链表
路灯上の马陈2 小时前
数据结构-树
数据结构·1024程序员节
benjormin3 小时前
Java数据结构 二叉搜索树
数据结构·算法
H.莓飛6 小时前
【数据结构】排序总结与规模实测
linux·服务器·开发语言·数据结构·visual studio·1024程序员节
码少女7 小时前
数据结构——B+树基础
数据结构·b树
揽星河..9 小时前
【初阶数据结构】常见的排序算法
数据结构·排序算法·1024程序员节
YLCHUP10 小时前
【模拟&STL】题解:AT_abc203_e [ABC203E] White Pawn_基础算法_数据结构_STL模板库_AtcoderABC_C++算法竞赛
数据结构·c++·算法·leetcode·动态规划·哈希算法·近邻算法
啊啊啊啊啊!!!!10 小时前
【c++】⽤哈希表封装myunordered_map和myunordered_set
数据结构·哈希算法·散列表
(●—●)橘子……10 小时前
力扣 第525场周赛 练习理解
数据结构·python·学习·算法·leetcode