看代码: 1 int cal(int n) { 2 int sum = 0; 3 int i = 1; 4 for (; i <= n; ++i) { 5 sum = sum + i; 6 } 7 return sum; 8 } 从cpu角度来看,这段代码每一行都执行类似操作 读数据-运算-写数据 ...
分类:
编程语言 时间:
2021-06-02 12:25:48
阅读次数:
0
一.直接(选择)插入排序 有两种方式:升序和降序 我使用升序 第一种排序:直接(简单)插入排序:每次向已经排序好的 队列里面找个合适的位置,将值插入 //笔试和面试: //1.算法的描述 2.算法的实现 3.效率(时间复杂度和空间复杂度和稳定性) //稳定性定义:如果两个关键值A和A`,如果一开始A ...
分类:
编程语言 时间:
2021-05-24 16:38:12
阅读次数:
0
分类:数组-二维数组及滚动数组 题目描述: 包含整数的二维矩阵 M 表示一个图片的灰度。你需要设计一个平滑器来让每一个单元的灰度成为平均灰度 (向下舍入) ,平均灰度的计算是周围的8个单元和它本身的值求平均,如果周围的单元格不足八个,则尽可能多的利用它们。 解题思路: 遍历矩阵 对于矩阵中的每一个单 ...
分类:
编程语言 时间:
2021-05-24 13:19:23
阅读次数:
0
排序方法 平均情况 最坏情况 最好情况 空间复杂度 稳定性 复杂性 直接插入排序 O(n^2) O(n^2) O(n) O(1) 稳定 简单 希尔排序 O(nlog2n) O(nlog2n) O(1) 不稳定 较复杂 冒泡排序 O(n^2) O(n^2) O(n) O(1) 稳定 简单 快速排序 O ...
分类:
编程语言 时间:
2021-05-24 10:05:48
阅读次数:
0
#时间复杂度O(N*N),空间复杂度O(1) #暴力法 def twoSum_baoli(nums: List[int], target:int) -> List[int]: for i in range(len(nums)-1): base = nums[i] for j in range(i+1 ...
分类:
编程语言 时间:
2021-05-04 15:39:57
阅读次数:
0
难度 easy 请判断一个链表是否为回文链表。 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true 进阶: 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题? 解题思路:这里的解题思路还是相对比较简单的,就是用快慢指针找到中间节 ...
分类:
其他好文 时间:
2021-05-04 15:38:36
阅读次数:
0
优秀的算法 时间效率高 存储量低 算法效率的度量 为算法编写专门的测试代码 事前估算: 算法采用的方案 编译产生的代码质量 问题的输入规模 机器执行指令的速度 ...
分类:
其他好文 时间:
2021-04-26 14:08:56
阅读次数:
0
斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) = 0,F(1) = 1F(n) = F(n - 1) + F(n - 2),其中 n > 1给你 n ,请计算 F(n) 。 示例 : 输入:2 ...
分类:
其他好文 时间:
2021-04-22 15:28:32
阅读次数:
0
2021-04-09:rand指针是单链表节点结构中新增的指针,rand可能指向链表中的任意一个节点,也可能指向null。给定一个由Node节点类型组成的无环单链表的头节点 head,请实现一个函数完成这个链表的复制,并返回复制的新链表的头节点。 【要求】时间复杂度O(N),额外空间复杂度O(1) ...
分类:
其他好文 时间:
2021-04-10 13:17:53
阅读次数:
0
翻转二叉树,2种方案,递归与非递归 (个人更喜欢非递归的方案,大多数情况下非递归的迭代都拥有更低的时空间复杂度,当然也存在 傅里叶快速变换那种小而美的递归方案,见仁见智吧) 1. 递归(深度优先遍历方案) 此方案中,我们会直接从最顶层父节点,一路递归至最左侧叶子节点, 然后再递归至其父节点的右孩子, ...
分类:
其他好文 时间:
2021-04-07 11:36:18
阅读次数:
0