数据结构与算法
文章平均质量分 72
基于python的数据结构与算法
MO2T
金融行业从事人工智能相关的岗位,现阶段主要承担图计算、知识图谱,同时也会用到部分自然语言处理的技术。依据工作、兴趣,不定期写一写总结的内容与文章。
展开
-
【python】岛屿数量
如果遍历到某个坐标的值为“1”,则满足岛屿的条件,count += 1。可以去搜索去四周的坐标是否为“1”,如果四周的坐标为“1”,则需要标记,避免重复count。对于矩阵的任意一个坐标[row][col],如何去找到与其连接的"1" 呢?遍历过的坐标可以作为标记已经遍历,如下代码证定义一个与矩阵同样大小的零矩阵,如果已经遍历过,则labels[row][col] = 1。对于示例1, 4 x 5 的矩阵,岛屿分布如下矩阵所示,岛屿数量是"1" 连接在一起的块数,即为3。原创 2024-03-15 20:00:00 · 1152 阅读 · 3 评论 -
CSDN编程竞赛第三期小鱼的航程(改进版)
小鱼的航程(改进版)有一只小鱼,它上午游泳150公里,下午游泳100公里,晚上和周末都休息(实行双休日),假设从周x(1原创 2022-08-09 08:00:00 · 330 阅读 · 2 评论 -
基于深度/广度遍历求有向无环图中目标节点到其他节点的全路径
基于python求无环图中target点到其他点的全路径1.算法说明graphtarget2.算法步骤3.算法验证1.算法说明graphgraph使用一个矩阵表示,矩阵中的第i行,第j列graph[i][j]表示节点i与节点j关联targettarget表示目标节点2.算法步骤将目标节点作为单条路径的起始节点;遍历目标节点的邻居节点;判断单条路径是否在全路径中,如果不在,则单条路径追加pythonclass Solution: def allpatht(self,原创 2021-12-09 08:00:00 · 1368 阅读 · 0 评论 -
【python】数组字符串等实用
Python实用数组数组排序数组索引数组数组排序#python自带排序#75. 颜色分类"""class Solution: def sortColors(self, nums: List[int]) -> None: """ Do not return anything, modify nums in-place instead. """ nums.sort() return nums"""num原创 2021-12-03 22:00:00 · 733 阅读 · 0 评论 -
基于python实现n进制转m进制
当我们将一个nnn进制的数字转换为mmm进制时,首先需要将该数字从nnn进制转换为十进制,然后再将得到的十进制数转换为mmm进制。这个过程涉及到数学运算和进制的理解,但通过使用适当的算法和编程技术,我们可以轻松地实现这种转换。无论是手动计算还是通过编程自动化处理,了解不同进制之间的转换原理都至关重要,它不仅是计算机科学中的基础概念,也在日常生活中有着广泛的应用。原创 2018-11-02 17:06:01 · 1721 阅读 · 0 评论 -
力扣215.数组中的第K个最大元素
数组中的第K个最大元素Just for the record冒泡法内存溢出from heapq import * import random#列表nums = [random.randint(0, 100) for i in range(10)]heap = []#将i压入堆中[heappush(heap, i) for i in nums]print(heap)#返回heap中k个最大的元素heap_k = nlargest(k, heap)#返回heap_k的最小堆pri原创 2021-06-30 22:00:37 · 85 阅读 · 0 评论 -
最短路径算法dijkstra
最短路径算法dijkstra该算法的核心就是从当前节点的邻居节点中找到距离起始节点的最近那个节点,作为下步迭代的节点。一 算法步骤给定起始节点s(v0)s(v_0)s(v0)、邻接矩阵AAA;初始化nnn维零标记向量labellabellabel,nnn维infinfinf距离向量distancedistancedistance;s(v0)s(v_0)s(v0)开始,更新label...原创 2020-02-14 10:32:43 · 374 阅读 · 0 评论 -
基于python实现Monte Carlo
蒙特卡洛模型(Monte Carlo Model),又称统计模拟法或随机抽样技术,是一种基于概率和统计理论的随机模拟方法。这种方法通过将所求解的问题与一定的概率模型相联系,使用电子计算机实现统计模拟或抽样,以获得问题的近似解。概率模型构建:为了求解数学、物理、工程技术以及管理等方面的问题,首先建立一个概率模型或随机过程。这个模型或过程的参数,如概率分布或数学期望,与问题的解相关联。随机抽样:通过对模型或过程的观察或抽样试验,收集大量的随机样本数据。这些样本数据用于计算所求参数的统计特征。原创 2018-12-07 17:26:26 · 6842 阅读 · 1 评论