数据结构与算法之美|算法与数据结构 数组
定义
数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。
数组的储存
由定义可知,计算机给数组开辟一个连续的内存空间,会给数组的首地址,分配一个内存地址,接下来的地址,首地址加上被访问元素之前元素的数据类型大小之和,即a[i]_address ...
阅读更多
矩阵中的路径|算法与数据结构-剑指Offer 矩阵路径
1234567请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一格开始,每一步可以在矩阵中向左、右、上、下移动一格。如果一条路径经过了矩阵的某一格,那么该路径不能再次进入该格子。例如,在下面的3×4的矩阵中包含一条字符串“bfce”的路径 ...
阅读更多
零钱兑换|算法与数据结构-LeetCode 题目
给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。
123输入: coins = [1, 2, 5], amount = 11输出: 3 解释: 11 = 5 + 5 + 1
1 ...
阅读更多
和为s的连续正数序列|算法与数据结构-LeetCode 题目
123输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。
12输入:target = 9输出:[[2,3,4],[4,5]]
12输入:target = 15输出:[[1,2,3,4,5 ...
阅读更多
腐烂的橘子|算法与数据结构-LeetCode 题目描述
12345678在给定的网格中,每个单元格可以有以下三个值之一:值 0 代表空单元格;值 1 代表新鲜橘子;值 2 代表腐烂的橘子。每分钟,任何与腐烂的橘子(在 4 个正方向上)相邻的新鲜橘子都会腐烂。返回直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1。
1 ...
阅读更多