算法
文章平均质量分 57
行路南
公众号:CV前沿
展开
-
【LeetCode 精选TOP】剑指 Offer 32 - I. 从上到下打印二叉树
剑指 Offer 32 - I. 从上到下打印二叉树一、题目从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。例如:给定二叉树: [3, 9, 20, null, null, 15, 7]二、解题思路根据题目要求"从上到下打印",且“同一层的节点从左到右”,了解这题考察的方向是二叉树的层次遍历。二叉树的遍历方式常见的有四种,分别是先序遍历中序遍历后序遍历层序遍历接下来,我们需要记住层序遍历通常是借助队列来实现。具体思路是:首先判断边界条件:如果根原创 2021-03-13 21:58:21 · 107 阅读 · 0 评论 -
部署农业知识图谱开源项目
前言项目是上海市《农业信息服务平台及农业大数据综合利用研究》子课题《上海农业农村大数据共享服务平台建设和应用》的研究成果。该课题是由上海市农业委员会信息中心主持,以“致富农民、服务市民、提高行政管理效能”为目标,充分发挥大数据在农业农村发展中的重要功能和巨大潜力,重点建设上海市级农业农村大数据中心,促进信息资源的共建共享和创新应用。华东师范大学数据科学与工程学院(以下简称华师大数据学院)作为课题主要参与单位以实现智慧农业为目标,探索农业大数据分析、挖掘和综合应用。华师大课题组在前期国家重点研发计划《大原创 2020-10-15 11:41:38 · 1958 阅读 · 2 评论 -
C++ erase在for循环下的用法
以前就发现了vector中的erase方法有些诡异(_),稍不注意,就会出错。今天又一次遇到了,就索性总结一下,尤其是在循环体中用erase时,由于vector.begin() 和vector.end()是变化的,因此就引入了错误的可能性。```cppvector<int> veci;veci.push_back(1);veci.push_back(2);veci.push_back(3);veci.push_back(4);veci.push_back(5);veci.pus转载 2020-06-11 15:41:58 · 3979 阅读 · 0 评论 -
匈牙利算法总结
指派问题概述:有n项不同的任务,需要n个人分别完成其中的1项,每个人完成任务的时间不一样。于是就有一个问题,如何分配任务使得花费时间最少。通俗来讲,就是n*n矩阵中,选取n个元素,每行每列各有1个元素,使得和最小。指派问题常采用的方法是匈牙利算法。除了标准型的匈牙利问题外,还经常遇到非平衡的匈牙利问题。也即是矩阵不是nn,而是mn。重要参考资料:指派问题匈牙利解法以及其优化pyth...原创 2020-01-07 10:45:36 · 1237 阅读 · 0 评论 -
最小的k个数
题目描述:查找最小的K个数 题目:输入n个整数,输出其中最小的K个数 例如,输入1、2、3、4、5、6、7、8这8个数字,则最小的4个数字为1、2、3、4。 解题思路: 首先:我们会想到先排序,这个想法最为直接,排完序之后自然可以找到最小的k个数,这是第一层思考; 接着:我们会想排序是把所有树的顺序都知道了,这肯定会浪费更多的时间,那么是不是可以考虑一些排序算法,只排序出最小的k个数即可原创 2016-02-25 19:59:07 · 469 阅读 · 0 评论 -
C++ 字符串
主要介绍C++程序中的string类 首先,为了在程序中能够使用string类,要加入头文件,如下 #include //不带.h 1.声明C++ 字符串 string str;//生成了一个空字符串str 2.字符串操作函数 = //赋值 += //尾部添加字符 insert() erase() ,常见用法: str.erase(pos,n)//pos指原创 2016-03-11 15:35:51 · 440 阅读 · 0 评论 -
一文了解荷兰国旗问题
题目描述我们将乱序的红白蓝三色小球排列成有序的红白蓝三色同颜色在一起的小球组。这个问题之所以叫荷兰国旗,是因为我们将红白蓝三色小球想象成条状物,有序排列后正好组成荷兰国旗。题目抽象我们可以把乱序的红白蓝小球看作一个只包含0,1,2三种元素的无序数组,如[1,2,0,2,1,1,0,2,1,2,2,0]。我们希望排序后小于1的排在前面,等于1的排在中间,大于1的排在后面。排序后的效果是...原创 2019-04-28 08:15:57 · 315 阅读 · 0 评论