摘要: Java韩顺平网络编程学习笔记 阅读全文
posted @ 2023-06-24 01:59 颜欢兮 阅读(21) 评论(0) 推荐(0)
摘要: 参考黑马程序员 的 Java I/O流 学习笔记。 阅读全文
posted @ 2023-06-24 00:32 颜欢兮 阅读(17) 评论(0) 推荐(0)
摘要: 1、线性表 线性表是具有相同数据类型的n个数据元素的有限序列。 2、线性表的顺序表示 特点:逻辑和物理顺序都相同。表中的任意数据元素都可以随机存取。 静态分配方式实现 #include<stdio.h> // 顺序表,静态分配 #define MaxSize 10 // 定义线性表 最大长度 typ 阅读全文
posted @ 2023-06-22 11:39 颜欢兮 阅读(29) 评论(0) 推荐(0)
摘要: 1、指针简单介绍 #include<stdio.h> int main(void){ int * p; // p是变量的名字, int * 表示p变量存放的是int类型的地址(指针变量) /* int * p 应该理解为 p 是变量名,p变量数据类型是 int * 类型,实际即使存放的是int变量地 阅读全文
posted @ 2023-06-18 16:10 颜欢兮 阅读(26) 评论(0) 推荐(0)
摘要: 343. 整数拆分 题目链接:343. 整数拆分 - 力扣(LeetCode) 思路 动规五部曲,分析如下: 确定dp数组(dp table)以及下标的含义 dp[i]:分拆数字 i,可以得到的最大乘积为dp[i]。 确定递推公式 可以想 dp[i]最大乘积是怎么得到的呢? 其实可以从1遍历j,然后 阅读全文
posted @ 2023-03-13 13:29 颜欢兮 阅读(33) 评论(0) 推荐(0)
摘要: 62.不同路径 题目链接:62. 不同路径 - 力扣(LeetCode) 思路 确定dp数组(dp table)以及下标的含义 dp[i][j] :表示从(0 ,0)出发,到(i, j) 有dp[i][j]条不同的路径。 确定递推公式 dp[i][j] = dp[i - 1][j] + dp[i][ 阅读全文
posted @ 2023-03-12 20:41 颜欢兮 阅读(19) 评论(0) 推荐(0)
摘要: 动态规划理论基础 动态规划五步曲: 确定dp数组(dp table)以及下标的含义 确定递推公式 dp数组如何初始化 确定遍历顺序 举例推导dp数组 509. 斐波那契数 题目链接:509. 斐波那契数 - 力扣(LeetCode) 思路 确定dp数组以及下标的含义 dp[i]的定义为:第i个数的斐 阅读全文
posted @ 2023-03-10 20:01 颜欢兮 阅读(24) 评论(0) 推荐(0)
摘要: 738.单调递增的数字 题目链接:738. 单调递增的数字 - 力扣(LeetCode) 思路 将数字转换成字符数组形式,然后从后向前遍历,当遇到当前这个数大于后一个数的时候,这个数减一,他的后一个数赋为9,这也是贪心策略。 在代码实现上,可以设置一个start变量来记录需要变为 9 的起始位置。 阅读全文
posted @ 2023-03-09 22:40 颜欢兮 阅读(24) 评论(0) 推荐(0)
摘要: 435. 无重叠区间 题目链接:435. 无重叠区间 - 力扣(LeetCode) 思路 这道题首先进行排序,使得相邻的区间紧挨在一起。按左边界或者右边界都可以。 其次定义一个变量result记录重叠的数目,当确定区间有重叠时,result++,同时取这两个区间右边界的最小的一个即可。 代码 按右边 阅读全文
posted @ 2023-03-08 19:29 颜欢兮 阅读(36) 评论(0) 推荐(0)
摘要: 860.柠檬水找零 题目链接:860. 柠檬水找零 - 力扣(LeetCode) 思路 这道题有如下三种情况: 情况一:账单是5,直接收下。 情况二:账单是10,消耗一个5,增加一个10 情况三:账单是20,优先消耗一个10和一个5,如果不够,再消耗三个5 所以局部最优:遇到账单20,优先消耗美元1 阅读全文
posted @ 2023-03-07 19:12 颜欢兮 阅读(28) 评论(0) 推荐(0)