算法比赛
文章平均质量分 79
蓝桥杯,csp等
Ma Sizhou
低级的欲望,放纵即可获得;高级的欲望,克制才能达到。
展开
-
leetcode(力扣)上如何自己构造二叉树输入用例?(python写法)
力扣上如何自己构造二叉树输入用例?原创 2021-12-23 18:39:40 · 5636 阅读 · 3 评论 -
记录:OJ(在线测评系统)在线编程常见输入输出(python版本)
来源:牛客网的:OJ在线编程常见输入输出练习场.目录第一题:多行输出a和b,并相加1.1 题目描述:1.2 代码:第二题:输入行数t,接着输入t行数,并相加2.1 题目描述:2.2 代码:第三题:输入多行,0表示结束3.1 题目描述:3.2 代码:第四题:输入多行,每行第一个数表示这行元素的个数,0表示结束4.1 题目描述:4.2 代码:第五题:输入t行,每行第一个数表示这行元素的个数5.1 题目描述:5.2 代码:第六题:输入多行,每行第一个数表示这行元素的个数(没结束条件)6.1 题目描述:6.2.原创 2021-08-21 10:59:46 · 1397 阅读 · 0 评论 -
kaggle比赛:Classify Leaves(使用resnet50预训练模型进行:图片树叶分类)
目录1、比赛介绍:2、数据划分:3、图像增广:4、读取数据:5、模型构造:6、计算损失:7、模型训练:8、模型推理:9、上传预测结果到kaggle:本文内容来源于《动手深度学习》一书。跟着沐神做kaggle比赛。注:以下代码都在jupyter中完成。1、比赛介绍:该任务是:给出树叶的图片,将给出的树叶分成176类。数据如下图所示,通过下面的网址,下载训练数据和测试数据:比赛地址及数据下载地址:https://www.kaggle.com/c/classify-leaves/da.原创 2021-08-07 16:26:03 · 4258 阅读 · 6 评论 -
kaggle比赛:Predict California sales prices(房价预测)
目录1、比赛介绍:2、导入数据:3、项目构建:特征选择:预处理:训练:模型推理及保存预测结果:4、上传预测结果到kaggle:5、总结:本文内容来源于《动手深度学习》一书。跟着沐神做kaggle比赛。1、比赛介绍:该任务是预测房屋销售价格的基础上的信息,如卧室的数量,生活区,位置,附近的学校,和卖方总结。数据包括2020年在加州售出的房屋,测试数据集中售出的房屋排在训练数据集中之后。此外,私人排行榜房屋也在公开排行榜房屋之后出售。数据如下图所示,通过下面的网址,下载训练数据和测试数据:比.原创 2021-07-13 20:00:57 · 4286 阅读 · 15 评论 -
动态规划算法:(3)最长回文子串(python和C++描述 )
动态规划算法的入门教程:动态规划算法:(1)入门介绍及案例分析接下来通过 最长回文子串 来加深对动态规划算法的理解。1、问题描述:2、思路分析:3、代码:python写法:C++写法:4、总结:动态规划算法的核心在于如何设计状态转移方程,而这也是动态规划算法最难的地方。动态规划算法:(1)入门介绍及案例分析...原创 2021-07-10 20:08:55 · 167 阅读 · 1 评论 -
动态规划算法:(2)最长公共子序列(python和C++描述 )
动态规划算法的入门教程:动态规划算法:(1)入门介绍及案例分析接下来通过 最长公共子序列(LCS) 来加深 动态规划算法的做法。1、问题描述:2、思路分析:3、代码:python写法:if __name__ == "__main__": A = input() # 第一个字符串 B = input() # 第二个字符串 dp = [[0 for _ in range(len(B)+1)] for _ in range(len(A)+1)] # 状.原创 2021-06-03 23:29:48 · 382 阅读 · 3 评论 -
动态规划算法:(1)入门介绍及案例分析
本文的内容来源于《算法笔记》这本书,讲解的确实好,所以记录一下,同时,也希望本文可以使读者更好的理解动态规划算法。目录1、动态规划的递归写法和递推写法1.1 什么是动态规划(1)动态规划的递归写法:(2)动态规划的递推写法:1、动态规划的递归写法和递推写法动态规划是一种非常精妙的算法思想,它没有固定的写法、极其灵活,常常需要具体问题具体分析。和大部分算法不同的是,一开始就直接讨论动态规划的概念并不是很好的学习方式,反而先接触一些经 典模型会有更好的效果。因此本文主要介绍一些动态规划的经典模型,.原创 2021-05-31 23:33:30 · 974 阅读 · 3 评论 -
python实现——Max左-Max右的最大绝对值问题
目录一、题目描述二、思路:三、python代码实现四、结果分析一、题目描述给你一个数组,将数组划分成两个部分,使得两部分的最大值之差的绝对值最大,求出最大差。例子:[1, 2, 3, 4, 5, 6]答案:∣6−1∣=5|6-1|=5∣6−1∣=5二、思路:这类题数据业务分析里的优化问题,我们一拿到题,想到的是尝试每一种可能,那时间复杂度为O(n2)O(n^2)O(n2),显然题目没这么简单,下面我分析一下:1、先遍历一遍找到整个数组的最大值MAXMAXMAX;2、然后分两种情.原创 2021-03-19 15:49:18 · 391 阅读 · 0 评论 -
python实现——ASCII谢尔宾斯基地毯
目录一、题目内容:二、思路:三、python代码:4、总结一、题目内容:二、思路:看到这个图案,肯定是自相似的,所以肯定用递归解决这个问题。但是具体怎样的呢?(1)这个其实就是二维矩阵,所以是要判断每个位置是不是要填给定字符,如果确定了每个位置填或不填,那不就解决问题了嘛;(2)用两个for循环不就遍历了所有的位置了么,所以这个也简单,现在的难点在于如何知道每个位置要填,所以用一个函数判断;(3)这个判断的函数需要三个参数,一个是边长数,另外两个是坐标。边界条件是n=1就返回T.原创 2020-11-13 01:34:09 · 1362 阅读 · 2 评论 -
python实现——四柱汉诺塔
原始的汉诺塔游戏是下面这样描述的:四柱汉诺塔游戏:思路:将柱子编号为1、2、3、4,初始时所有的盘都在1上,目标是都移动到4上。假设将前M-2个移动到2上,那剩下的两个就很容易移动到4上了(要三步);然后将剩下的M-2个再移动到4上即可。注意点:若是单数,那最后剩下一个,所以要单独判断。实现代码:# 四柱汉诺塔def hannuota(M, fromPole, withPole1, withPole2, toPole): global num if M &.原创 2020-11-12 01:30:55 · 1089 阅读 · 2 评论 -
python实现——任意进制转换
问题:思路:先转换为十进制,再由十进制转换为目标进制。代码:def scale_transform_decimalism(M, num): # 转换为十进制 str_dict = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ' result = 0 j = 0 for i in range(len(num)-1, -1, -1): result += str_dict.index(num[i]) * M**j .原创 2020-11-11 00:32:45 · 1504 阅读 · 2 评论 -
python语言在算法比赛中常用函数总结
查看常用的内置函数:>>> dir(__builtins__)1、min()、max()、pow()>>> a = [1,2,3,4,5,6,7]>>> max(a)7>>> min(a)1>>> a = pow(3,2)>>> a92、lower()、upper()返回字符串的小写大写,find() 用于找字符串中特定的字符串,没有找到的话返回-1,找到则返回第一个字母的索原创 2020-08-30 20:46:53 · 1464 阅读 · 0 评论 -
python实现二叉树的4种遍历
原文链接: https://blog.csdn.net/Bone_ACE/article/details/46718683.介绍:树是数据结构中非常重要的一种,主要的用途是用来提高查找效率,对于要重复查找的情况效果更佳,如二叉排序树、FP-树。另外可以用来提高编码效率,如哈弗曼树。代码:用python实现树的构造和几种遍历算法,虽然不难,不过还是把代码作了一下整理总结。实现功能:树的构造递归实现先序遍历、中序遍历、后序遍历堆栈实现先序遍历、中序遍历、后序遍历队列实现层次遍历(注:.转载 2020-06-29 18:42:38 · 454 阅读 · 0 评论 -
深度优先遍历实现0-1背包问题
能很好的理解递归实现的原理。0-1背包问题描述:有n件物品,每件物品的重量为w[i],价值为c[i]。现在需要选出若干件物品放入一个容量为V的背包中,使得选入背包的物品重量之和在不超过V的前提下,让背包中物品的价值之和最大,求最大价值。话不多说,先上代码(python实现):# DFS为深度优先遍历函数# index为当前处理的物品编号,sumW和sumC分别为当前总重量和当前总价值...原创 2020-05-04 14:05:07 · 652 阅读 · 0 评论