数据结构与算法
文章平均质量分 51
似梦的苏烟
这个作者很懒,什么都没留下…
展开
-
栈和队列的互相实现
创建两个栈来实现队列和用于和元素操作时,将元素push到stackIn中即可和操作之前,都需要通过方法进行判断这个栈中是否为空,若为空则需要将栈中的元素全部push到这个栈中;若不为空则直接返回,输出中的元素判断是否为空时直接判断是否同时满足和中都为空,都为空时才返回空 队列实现栈 1.创建两个队列queue1和queue2,2.每次需要栈顶元素的时候,就只留quque1中的队尾的那个元素,剩余的就存入queue2中3.每次操作完queue1后就需要将其还原,如果queue1中不为空,则将剩下的queue原创 2022-07-07 13:20:41 · 79 阅读 · 0 评论 -
时空复杂度分析
在程序设计中,为了完成某些功能,工程师们会设计一些算法,来完成这些功能。然而完成这些功能的时候不可避免的会遇到一些效率问题,而。一般情况下,,当一个算法时间复杂度降低,这个算法的空间复杂度会相应升高。。例如之下代码 这个代码的时间复杂度就是 O(N*N) 即 O(N²)一般情况下我们使用最坏情况表示时间复杂度,比如: 常见时间复杂度对应表如交换数值算法: 以上两个算法都是交换两个变量的数值,但算法一使用了一个额外变量,所以算法一的时间复杂度就是 O(1) 。 算法二,所以算法二的时间复杂度就是 O(0原创 2022-06-20 22:12:36 · 211 阅读 · 0 评论