
python-算法
Imbuka
启程的追梦者
展开
-
人工智能竞赛-行为识别参赛总结
参赛背景3周前,接到一项任务是准备视频行为识别模型并参赛。竞赛数据集来自互联网视频,总量不少于1万段,其中包含共6类,每类不少于200段的特定行为视频。每段特定行为视频至少包含一段起止位置完整的某类特定行为,并包含与特定行为无关的背景视频内容,视频的平均帧率为24FPS,时长区间为20s-200s之间。赛题分析该赛题是典型的视频行为识别任务,特点在于需要同时分析视频图像内容与视频图像变化信息,主要的方案有传统光流分析、骨架跟踪、卷积识别、序列预测等。在此基础上还衍生了行为检测的方案,此处不提。参考原创 2020-11-14 20:04:02 · 866 阅读 · 0 评论 -
时间规模为nlogn的数列逆序对数量计算
逆序对假设A[1…n]是一个有n个不同数的数组, 若i设计思路想要把算法规模控制在nlgn级别, 自然会联系到归并排序算法. 如果依赖归并排序的过程, 那么其中需要统计的则是每层递归执行合并时后序数组中每个元素针对前序数组的逆序和, 也就是每次获取后序数组元素时前序数组剩余元素的个数之和.算法实现int cnt = 0;void Count(){ int[] ar原创 2017-11-07 23:52:24 · 345 阅读 · 0 评论 -
排列and组合代码实现
去年写不出全排列,今天终于完成,前来还愿非重复排列使用分治递归,按位逐层交换,记录底层交换结果,恢复交换并返回def swap(s, i1, i2): if i1 < len(s) and i2 < len(s): s[i1], s[i2] = s[i2], s[i1]def arrange(s, begin, end): if begin =...原创 2019-02-22 19:40:08 · 849 阅读 · 0 评论 -
狼羊草和农夫过河问题
问题描述农夫需要把狼、羊、菜和自己运到河对岸去,只有农夫能够划船,而且船比较小,除农夫之外每次只能运一种东西,还有一个棘手的问题,就是如果没有农夫看着,羊会偷吃菜,狼会吃羊。请考虑一种方法,让农夫能够安全地安排这些东西和他自己过河。代码实现本题使用深度优先策略构建行动树,搭配三种剪枝逻辑以保证结果可行老婆饿了,要赶回家送饭,细节请读代码,见谅~~left = 0b1111right =...原创 2019-02-27 20:18:25 · 4572 阅读 · 2 评论 -
最长子序列LCS实现
问题描述已知两个固定字母序列,求解两者最长(非连续)子序列长度实现思路使用动态规划思想,将a序列的i长度子序列与b序列的j长度子序列的最长公共子序列看作子问题 s[i,j]则s[i,j]满足如下公式代码实现子序列矩阵import numpy as npdef dplcs(str1, str2): s = np.zeros((len(str1) + 1, len(str2) ...原创 2019-02-25 20:13:06 · 233 阅读 · 0 评论 -
单向链表实现及倒序
单向链表单向链表也称链表,python没有原生结构与之对应,参考前辈博客做了一版简化实现如下附前辈博客地址:https://www.cnblogs.com/yupeng/p/3413763.htmlclass Node(object): def __init__(self, val, p=0): self.data = val self.next = ...原创 2019-02-26 16:35:23 · 522 阅读 · 0 评论 -
24点组合计算问题
问题描述给出任意个整数,寻找其可能的组合,使其四则运算结果值为24点解决方案使用分治思想,每次取两个数字运算,将其结果替换数集中已使用的操作数,直到融合为一个计算式,判断其是否符合条件该问题解决过程用到了穷举法,如果结果不唯一,则会输出所有可能结果nums = ['3', '3', '7', '7']opts = ['({}+{})', '({}-{})', '{}*{}', '{}/...原创 2019-03-04 20:10:14 · 1281 阅读 · 1 评论