Anaconda 2 官方:https://www.anaconda.com/ 一 简介 The Most Popular Python Data Science Platform Anaconda® is a package manager, an environment manager, a P ...
分类:
编程语言 时间:
2019-01-26 19:36:32
阅读次数:
182
1. 题目 2. 解答 详细解答方案可参考 "北京大学 MOOC 程序设计与算法(二)算法基础之动态规划部分" 。 从三角形倒数第二行开始,某一位置只能从左下方或者右下方移动而来,因此,我们只需要求出这两者的较小值然后再加上当前元素,即可得出从某一位置到最下边的最小路径和。以此类推,我们就可以求出最 ...
分类:
其他好文 时间:
2019-01-24 00:22:16
阅读次数:
175
基于比较的排序: 基础排序: 冒泡排序:谁大谁上,每一轮都把最大的顶到天花板 效率太低——掌握swap。 选择排序:效率较低,但经常用它内部的循环方式来找最大值和最小值。 插入排序:虽然平均效率低,但是在序列基本有序时,它很快,所以也有其适用范围。 希尔排序(缩小增量排序):是插排的改良,对空间思维 ...
分类:
编程语言 时间:
2019-01-18 10:52:34
阅读次数:
252
基础背包 基础背包 题目 题目 有N件物品和一个容量为V的背包。第i件物品的重量是w[i],价值是v[i]。求解将哪些物品装入背包可使这些物品的重量总和不超过背包容量,且价值总和最大。 基本思路 基本思路 这是最基础的背包问题,特点是:每种物品仅有一件,可以选择放或不放。 用子问题定义状态:即f[i ...
分类:
编程语言 时间:
2019-01-12 21:48:04
阅读次数:
203
2019你好!好好生活,好好工作! 1、二分查找法 基本思路:获取数组的中间值,将数组分割成两份,利用中间值跟指定的值进行比较,如果中间值大于指定的值,就在数组的左边进行查找;如果中间值小于指定值,就在数组的右边进行查找。如此循环的执行下去,最终找到符合的值。 优点: 1.速度快 2.比较次数少 3 ...
分类:
编程语言 时间:
2019-01-01 21:44:12
阅读次数:
244
面试中的排序算法总结 前言 查找和排序算法是算法的入门知识,其经典思想可以用于很多算法当中。因为其实现代码较短,应用较常见。所以在面试中经常会问到排序算法及其相关的问题。但万变不离其宗,只要熟悉了思想,灵活运用也不是难事。一般在面试中最常考的是快速排序和归并排序,并且经常有面试官要求现场写出这两种排 ...
分类:
编程语言 时间:
2019-01-01 14:56:05
阅读次数:
214
1.汉诺塔: 如下图所示,需要将A柱子中的所有圆盘按照从小到大的顺序移动到C柱子上,并且在移动过程中大圆盘不能在小圆盘上面 分析问题:最终希望呈现的结果是将A柱子上的盘子全部按照从小到大的顺序移动到C柱子上 1.n个盘子,将n-1视为一个整体 2.将n-1个盘子视为一个盘子从a经过c移动到b 3.将 ...
分类:
编程语言 时间:
2018-12-28 00:48:51
阅读次数:
220
算法基础 一、什么是算法? 算法(Algorithm):一个计算过程,解决问题的方法 一个算法应该具有以下七个重要的特征: ①有穷性(Finiteness):算法的有穷性是指算法必须能在执行有限个步骤之后终止; ②确切性(Definiteness):算法的每一步骤必须有确切的定义; ③输入项(Inp ...
分类:
编程语言 时间:
2018-12-27 03:26:49
阅读次数:
206
一、算法时间复杂度的O(n)和log2n的区别 例如一个print(1) 的时间复杂度 为O(1),那多个print串行呢 结果仍然为O(1) 一个for循环呢 时间复杂度 为O(n) 这个N取决于传入的参数 那logn是如何取呢, 需要 一次循环减半. 就为nlog2n 循环减半的过程 O(log ...
分类:
编程语言 时间:
2018-12-20 14:16:40
阅读次数:
155
1.集成学习概念 在机器学习的有监督学习算法中,我们的目标是学习出一个稳定的且在各个方面表现都较好的模型,但实际情况往往不这么理想,有时我们只能得到多个有偏好的模型(弱监督模型,在某些方面表现的比较好)。集成学习就是组合这里的多个弱监督模型以期得到一个更好更全面的强监督模型,集成学习潜在的思想是即便 ...
分类:
编程语言 时间:
2018-12-19 21:56:48
阅读次数:
238