logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

数据结构入门(C语言版)图的概念和功能函数实现

1.图的定义和术语1.1 定义1.2 常用术语2.图的存储结构2.1 图的数组(邻接矩阵)存储表示2.2 图的邻接表存储表示3.图的遍历3.1 深度优先搜索3.2 广度优先搜索3.3 示例4.连通网的最小生成树4.1 克鲁斯卡尔(Kruskal)算法4.2 普里姆(Prim)算法5.图的建立及其接口函数的实现

文章图片
#数据结构#c语言#算法 +2
初识Python

Python背景知识1. 编程语言2. Python优缺点搭建Python环境1.找到官网2. 下载3.安装4.检查安装PyCharm1.找到官网下载2. 安装3. 检查Python官网文档学习

文章图片
#python
算法沉淀——贪心算法二(leetcode真题剖析)

当找到更低的价格时,更新这个变量;当计算当前位置的利润时,与之前记录的最大利润进行比较,如果更大则更新最大利润。这种方法的关键点在于,我们只关心递增子序列的最后一个元素,而不是整个递增子序列的具体形状。通过维护最后一个元素的最小值,可以在遍历数组时保持递增子序列的长度信息,并在需要时更新。上一题的精简版,可以直接用上面的代码返回长度是否大于等于三即可,但在这里我们不需要这么复杂,仅需连个变量即可。

文章图片
#算法#贪心算法#leetcode
算法沉淀——贪心算法四(leetcode真题剖析)

首先我们想到如果某个字符出现偶数次,那么它一定可以构成回文串,所以我们利用这个思想将所有字符的偶数个都计入回文串的个数中,若该个数不超过给出的字符串长度,那么我们可以再加上任意字符,即为最长的回文字符串。我们可以通过例子发现,前两个位置的数无法被改变,在这道题中,为了让结果最大,我们应将第二个位置之后的数都变成分子,所以我们只需要将括号加在第二位至最后一位即可得出最大数。时,为了让上升的数有更多选

文章图片
#算法#贪心算法#leetcode
算法沉淀——贪心算法一(leetcode真题剖析)

贪心算法(Greedy Algorithm)是一种基于贪心策略的优化算法,它通常用于求解最优化问题,每一步都选择当前状态下的最优解,以期望通过局部最优的选择最终达到全局最优。贪心算法的思想是在每一步都做出在当前状态下局部最优的选择,而不考虑未来可能造成的影响。

文章图片
#算法#贪心算法#leetcode
算法沉淀——记忆化搜索(leetcode真题剖析)

记忆化搜索算法(Memoization)是一种通过存储已经计算过的结果来避免重复计算的优化技术,通常应用于递归算法中。这种技术旨在提高算法的效率,减少重复计算,特别是对于具有重叠子问题的问题。

文章图片
#算法#leetcode#代理模式
C语言初阶之转义字符

转义字符(Escape character),所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示。而C语言中定义了一些字母前加""来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符;在平常的代码编写中,printf函数经常会用到。转义字符虽然由两个及两个以上的字符构成,但它表示的却是单个字符简单转义字符(Simple escape sequence)转义字

文章图片
#c语言#开发语言
算法沉淀——动态规划之完全背包问题(leetcode真题剖析)

完全背包问题是背包问题的一种变体,与01背包问题不同,它允许你对每种物品进行多次选择。具体来说,给定一个固定容量的背包,一组物品,每个物品有重量和价值,目标是找到在背包容量范围内,使得背包中的物品总价值最大的组合。

文章图片
#算法#动态规划#leetcode
算法沉淀——动态规划之01背包问题(leetcode真题剖析)

01背包问题是一类经典的动态规划问题,通常描述为:有一个固定容量的背包,以及一组物品,每件物品都有重量和价值,目标是找到在背包容量范围内,使得背包中的物品总价值最大的组合。

文章图片
#算法#动态规划#leetcode
算法沉淀——贪心算法七(leetcode真题剖析)

首先题目要求保证存在答案,我们只需将出现次数最多的那个数两两相隔放置,剩下的数接着两两相隔放置即可,关于剩下的数为什么也可以直接两两放置,这是因为我们可以通过鸽巢定理推出只有出现最多的数才会影响到相隔,而我们解决了出现次数最大的数,所以剩下的数只要继续按照两两相隔的顺序继续放置即可。这一题和上一题思路基本一致,但需要注意的是,这一题并没有说一定有解,所以这里我们需要给出不符合的判断,其余代码类似上

文章图片
#算法#贪心算法#leetcode
    共 15 条
  • 1
  • 2
  • 请选择