微信扫一扫打赏支持

06 2020 档案

摘要:Python语言缺点 一、总结 一句话总结: 速度慢,Python 的运行速度相比C语言确实慢很多,跟JAVA相比也要慢一些, 代码不能加密,因为PYTHON是解释性语言,它的源码都是以名文形式存放的 线程不能利用多CPU问题,GIL即全局解释器锁(Global Interpreter Lock), 阅读全文
posted @ 2020-06-30 22:39 范仁义 阅读(492) 评论(0) 推荐(0) 编辑
摘要:人工智能参考 感知器(神经元)相关代码 一、总结 一句话总结: 1、有训练过程,比如这里的训练10次,反复迭代 2、有学习速率,比如这里的0.1 # input_vecs = [[1, 1], [0, 0], [1, 0], [0, 1]] # labels = [1, 0, 0, 0] 1、参照感 阅读全文
posted @ 2020-06-30 10:12 范仁义 阅读(386) 评论(0) 推荐(0) 编辑
摘要:Python pip 国内镜像大全及使用办法 一、总结 一句话总结: 在你的“C:\Users\你的用户名\”目录下创建“pip”目录,“pip”目录下创建“pip.ini”文件 “pip.ini”文件内容: [global] index-url=http://mirrors.aliyun.com/ 阅读全文
posted @ 2020-06-30 00:31 范仁义 阅读(837) 评论(0) 推荐(0) 编辑
摘要:General error: 1366 Incorrect string value: '\xF0\x9F\x98\x8A' for column 一、总结 一句话总结: 出错原因是因为mysql中的utf8是3个字符,一些特殊的字符四个字符,需要用utf8mb4类型 解决方法就是将mysql的编码 阅读全文
posted @ 2020-06-29 20:09 范仁义 阅读(1750) 评论(0) 推荐(0) 编辑
摘要:if __name__ == '__main__' 如何正确理解 一、总结 一句话总结: if __name__ == '__main__',这句话可以让引入的python模块中的main方法(做测试的方法)不执行 PI = 3.14 def main(): print "PI:", PI if _ 阅读全文
posted @ 2020-06-29 19:33 范仁义 阅读(220) 评论(0) 推荐(0) 编辑
摘要:弄明白python reduce 函数 一、总结 一句话总结: A、reduce() 函数在 python 2 是内置函数, 从python 3 开始移到了 functools 模块。 B、from functools import reduce C、reduce(lambda x, y: x * 阅读全文
posted @ 2020-06-29 19:07 范仁义 阅读(333) 评论(0) 推荐(0) 编辑
摘要:Python 2与Python 3兼容性的写法,需要一个特殊的包 from __future__ import print_function 用法 一、总结 一句话总结: 在开头加上from __future__ import print_function这句之后,即使在python2.X,使用pr 阅读全文
posted @ 2020-06-29 18:58 范仁义 阅读(308) 评论(0) 推荐(0) 编辑
摘要:人工智能数学参考 8、常用激活函数 一、总结 一句话总结: Sigmoid函数:f(z)=1/(1+e^(-z)) tanh函数:tanh(x)=e^x-e^(-x)/(e^x+e^(-x)) Relu函数:Relu = max(0,x) MaxOut函数: 1、什么是信息熵? 1、熵表示物体内部的 阅读全文
posted @ 2020-06-29 06:42 范仁义 阅读(315) 评论(0) 推荐(0) 编辑
摘要:常用激活函数(激励函数)理解与总结 一、总结 一句话总结: Sigmoid函数:f(z)=1/(1+e^(-z)) tanh函数:tanh(x)=e^x-e^(-x)/(e^x+e^(-x)) Relu函数:Relu = max(0,x) MaxOut函数: 1、Sigmoid函数 f(z)=1/( 阅读全文
posted @ 2020-06-29 06:01 范仁义 阅读(785) 评论(0) 推荐(0) 编辑
摘要:一看就懂的信息熵 一、总结 一句话总结: H(X)=- ∑ P(x)logP(x) 1、信息的大小跟随机事件的概率 的关系? 信息的大小跟随机事件的概率有关。越小概率的事情发生了产生的信息量越大,如湖南产生 的地震了;越大概率的事情发生了产生的信息量越小,如太阳从东边升起来了(肯定发生嘛,没什么信息 阅读全文
posted @ 2020-06-29 04:02 范仁义 阅读(814) 评论(0) 推荐(0) 编辑
摘要:人工智能数学参考 7、核函数应用 一、总结 一句话总结: 一些低维很难解决的问题,切换到高维,可能会很简单 1、泊松分布 思想? 泊松分布就是把时间段分细,用二次分布来计算每个时间段事情是否发生,然后求极限就会得到泊松分布的式子 P(N(t)=n) = (λt)^n*e^(-λt)/n! 2、泊松分 阅读全文
posted @ 2020-06-29 00:45 范仁义 阅读(403) 评论(0) 推荐(0) 编辑
摘要:核函数是什么 一、总结 一句话总结: 假设函数Ф是一个从低维特征空间到高维特征空间的一个映射,那么如果存在函数K(x,z), 对于任意的低维特征向量x和z,都有:K(x,z)=θ(x)*θ(z),称函数K(x,z)为核函数(kernal function) 1、核函数在解决线性不可分问题的时候,采取 阅读全文
posted @ 2020-06-29 00:16 范仁义 阅读(3608) 评论(0) 推荐(0) 编辑
摘要:概率论中PDF、PMF和CDF的区别与联系 一、总结 一句话总结: PDF:概率密度函数(probability density function), 在数学中,连续型随机变量的概率密度函数(在不至于混淆时可以简称为密度函数)是一个描述这个随机变量的输出值,在某个确定的取值点附近的可能性的函数。 P 阅读全文
posted @ 2020-06-28 23:46 范仁义 阅读(7964) 评论(0) 推荐(1) 编辑
摘要:如何通俗理解 beta 分布 一、总结 一句话总结: beta分布可以看作一个概率的概率分布,当你不知道一个东西的具体概率是多少时,它可以给出了所有概率出现的可能性大小。 二、如何通俗理解 beta 分布(转) 转自:如何通俗理解 beta 分布? - 知乎https://www.zhihu.com 阅读全文
posted @ 2020-06-28 23:37 范仁义 阅读(1530) 评论(0) 推荐(0) 编辑
摘要:Jupyter Notebook 更改本地目录 一、总结 一句话总结: 在jupyter_notebook_config.py中修改c.NotebookApp.notebook_dir后,在anaconda prompt中直接输入jupyter notebook,就打开的是设置好的目录位置 1、Ju 阅读全文
posted @ 2020-06-28 23:06 范仁义 阅读(815) 评论(0) 推荐(0) 编辑
摘要:卡方分布的应用 一、总结 一句话总结: 若n个相互独立的随机变量ξ₁、ξ₂、……、ξn ,均服从标准正态分布(也称独立同分布于标准正态分布),则这n个服从标准正态分布的随机变量的平方和 就是卡方分布 1、为什么要引用卡方分布? 以特定概率分布为某种情况建模时,事物长期结果较为稳定,能够清晰进行把握。 阅读全文
posted @ 2020-06-28 09:32 范仁义 阅读(2880) 评论(0) 推荐(0) 编辑
摘要:如何通俗理解泊松分布?(转) 一、总结 一句话总结: 泊松分布就是把时间段分细,用二次分布来计算每个时间段事情是否发生,然后求极限就会得到泊松分布的式子 P(N(t)=n) = (λt)^n*e^(-λt)/n! 二、如何通俗理解泊松分布?(转) 转自:如何通俗理解泊松分布?https://blog 阅读全文
posted @ 2020-06-28 08:56 范仁义 阅读(6240) 评论(0) 推荐(0) 编辑
摘要:奥卡姆剃刀定律 一、总结 一句话总结: 奥卡姆剃刀:如无必要,勿增实体。 奥卡姆剃刀定律在企业管理中可进一步深化为简单与复杂定律:把事情变复杂很简单,把事情变简单很复杂。 奥卡姆剃刀定律要求,我们在处理事情时,要把握事情的主要实质,把握主流,解决最根本的问题。尤其要顺应自然,不要把事情人为地复杂化, 阅读全文
posted @ 2020-06-27 23:57 范仁义 阅读(1567) 评论(0) 推荐(0) 编辑
摘要:人工智能数学参考 6、中心极限定理 一、总结 一句话总结: 样本的平均值约等于总体的平均值。不管总体是什么分布,任意一个总体的样本平均值都会围绕在总体的整体平均值周围,并且呈正态分布。 如果要估计14亿人的每天读书数,可以整几次100万来估计 1、A、B为不相关的时候的P(A|B)、P(B|A)、P 阅读全文
posted @ 2020-06-27 23:44 范仁义 阅读(316) 评论(0) 推荐(0) 编辑
摘要:人工智能数学参考 5、似然函数 一、总结 一句话总结: 1、给定联合样本值x关于参数0的函数:L(0|x)=f(x|0),其中x是随机变量X取得的值,0是未知的参数。 2、f(x|0)是密度函数,表示给定0下的联合密度函数。 3、似然函数是关于0的函数而密度函数是关于x的函数。 1、离散型概率分布中 阅读全文
posted @ 2020-06-27 23:40 范仁义 阅读(909) 评论(0) 推荐(0) 编辑
摘要:先验概率与后验概率、贝叶斯区别与联系 一、总结 一句话总结: 先验概率:假设我们出门堵车的可能因素有两个(就是假设而已,别当真):车辆太多和交通事故。堵车的概率就是先验概率 。 条件概率:那么如果我们出门之前我们听到新闻说今天路上出了个交通事故,那么我们想算一下堵车的概率,这个就叫做条件概率 。也就 阅读全文
posted @ 2020-06-27 23:13 范仁义 阅读(2448) 评论(0) 推荐(1) 编辑
摘要:马尔可夫不等式与切比雪夫不等式 一、总结 一句话总结: 马尔科夫不等式:P(X>=a) <= E(X)/a,X>=0,a>0 切比雪夫不等式:P{|X-E(X)|>=ε} <= δ^2/ε^2,δ是标准差 1、马尔可夫不等式与切比雪夫不等式 选择情况? 如果精确度要求不高,只需要了解大概,那么马尔可 阅读全文
posted @ 2020-06-27 22:30 范仁义 阅读(1461) 评论(0) 推荐(0) 编辑
摘要:特征值与特征向量 一、总结 一句话总结: 1、二维公园(坐标轴)里的椅子上有一个孤独的向量v(-2,2),一个忠心(不变)的矩阵A试图从左边搭讪向量v,于是他们坐在一起得到向量Av 2、秀外慧中的向量v彻底迷住了矩阵A,待到离别时,A心里始终放不下v,当v去一个地方的时候,Av(A心里有着v,不是单 阅读全文
posted @ 2020-06-27 18:03 范仁义 阅读(467) 评论(0) 推荐(0) 编辑
摘要:人工智能数学参考 4、SVD矩阵分解 注意 一、总结 一句话总结: *、100万行数据(用户购买商品数据),10万件商品,加入某个用户只买了3件商品,那就太稀疏了,所以可以100万*10和10*10万 *、m*n的矩阵 转化为 m*k+k*k+k*n *、照样按照特征值的大小来进行筛选,一般前10% 阅读全文
posted @ 2020-06-27 17:55 范仁义 阅读(261) 评论(0) 推荐(0) 编辑
摘要:人工智能数学参考 3、矩阵和行列式的区别 一、总结 一句话总结: 矩阵本身是一个数表,而行列式是一个值,并且是所有主对角线减去副对角线 行列式的行数和列数要相等,矩阵可以不相等 1、行列式是什么? |||-begin a11 a12 a21 a22 |||-end 矩阵中的行列式 是所有主对角线减去 阅读全文
posted @ 2020-06-27 02:11 范仁义 阅读(3097) 评论(0) 推荐(0) 编辑
摘要:人工智能数学参考 2、泰勒公式的思想 一、总结 一句话总结: 1、以直代曲:f(x)约等于f(x0)+f'(x0)(x-x0) 2、一点一世界:一个点的下一阶导数永远可以描述上一阶导数的变化趋势 1、微积分思想? a、以矩代曲:对于矩形,我们可以轻松求得其面积,能否用矩形代替曲线形状呢 b、分割无限 阅读全文
posted @ 2020-06-26 23:43 范仁义 阅读(688) 评论(0) 推荐(0) 编辑
摘要:人工智能数学参考 1、微分学核心思想:函数逼近 一、总结 一句话总结: 微分学的核心思想是用熟悉且简单的函数对复杂数进行局部逼近 逼近是人类探讨复杂问题时经常使用的一种手段,比如:人均GDP:使用常数函数来逼近收入分布函数平均速度:使用线性函数来逼近实际运动轨迹年化收益率:使用指数函数来逼近收益函数 阅读全文
posted @ 2020-06-26 19:00 范仁义 阅读(538) 评论(0) 推荐(1) 编辑
摘要:方向导数,偏导数,梯度 一、总结 一句话总结: 方向导数:曲面的每一个点是有很多条切线的,不同方向的切线就是方向导数。 偏导数:例如f(x0,y0)对x求偏导就是与X轴方向平行时的方向导数。 梯度:梯度的方向是最大的方向导数,是f(x,y)这一点增长最快的方向。 二、方向导数,偏导数,梯度 转自或参 阅读全文
posted @ 2020-06-26 18:48 范仁义 阅读(6224) 评论(0) 推荐(0) 编辑
摘要:python、js、php区别 8、排序 一、总结 一句话总结: python中的排序函数有sort(对列表排序)和sorted(对所有可迭代序列排序),可以通过reverse参数指定倒序排序,key参数指定排序字段 js中的排序就是sort方法,可以指定排序函数来进行排序 php中有usort方法 阅读全文
posted @ 2020-06-26 10:12 范仁义 阅读(216) 评论(0) 推荐(0) 编辑
摘要:python、js、php区别 7、面向对象 一、总结 一句话总结: python、js、php面向对象的逻辑都是一样的,具体实现因为语言的不同而略有区别,比如python中继承用的是圆括号,比如class Bird(Animal): """ 需求: 创建Animal类(name属性,say方法) 阅读全文
posted @ 2020-06-26 00:07 范仁义 阅读(144) 评论(0) 推荐(0) 编辑
摘要:python、js、php区别 6、函数相关 一、总结 一句话总结: python、js、php函数的逻辑都是一样的,具体写法稍有区别,python里面有匿名函数(lambda函数),lambda函数和js里面的箭头函数比较像 """ 1、函数 2、匿名函数 """ # 1、函数 # def my_ 阅读全文
posted @ 2020-06-24 05:48 范仁义 阅读(171) 评论(0) 推荐(0) 编辑
摘要:python、js、php区别 5、存储结构 一、总结 一句话总结: python里的列表就像js和php中的索引数组,python里的元组可以看做不能修改的列表,python里的字典就像js和php中的关联数组 二、存储结构 博客对应课程的视频位置:5、存储结构https://www.fanren 阅读全文
posted @ 2020-06-24 03:19 范仁义 阅读(194) 评论(0) 推荐(0) 编辑
摘要:python、js、php区别 4、基本结构 一、总结 一句话总结: python、js、php的选择结构和循环结构的逻辑都是一样的,具体实现稍有不同,python中用缩进表示语句块,并且复杂语句后都有冒号,python循环结构后可接else 1、python中三元运算符的结构? max_num=a 阅读全文
posted @ 2020-06-24 02:45 范仁义 阅读(161) 评论(0) 推荐(0) 编辑
摘要:python、js、php区别 3、运算符 一、总结 一句话总结: python、js、php 各自运算符实现的功能差不多,注意python里面没有自增运算符,并且逻辑运算符是英文单词and or not 1、python运算符需要注意的方面? 1、python没有自增(++)、自减(--)运算符 阅读全文
posted @ 2020-06-24 00:38 范仁义 阅读(243) 评论(0) 推荐(0) 编辑
摘要:python、js、php区别 2、数据类型 一、总结 一句话总结: python数据类型有 数字类型(int、float、complex复数)、bool、字符串、列表、元组、字典、集合,查看变量类型可以用 type(a) js数据类型有 Number、String、Boolean、Null、Und 阅读全文
posted @ 2020-06-23 20:30 范仁义 阅读(359) 评论(0) 推荐(0) 编辑
摘要:python、js、php区别 1、基本区别 一、总结 一句话总结: python、js、php语法大致区别不大,细微处倒是有很多区别,主要也是各个语言的侧重点不同,python最主要是科学计算、爬虫、机器学习,js主要是前端逻辑,php主要是web后端 二、基本区别 博客对应课程的视频位置:1、基 阅读全文
posted @ 2020-06-23 04:49 范仁义 阅读(515) 评论(0) 推荐(0) 编辑
摘要:python疑难问题 3、可变和不可变数据类型 一、总结 一句话总结: python中不可变数据类型:比如 数值型、字符串型string和元组tuple python中可变数据类型:比如 列表list和字典dict 1、python中不可变数据类型(比如数值型)的特点? 1、改变值,变量的地址会改变 阅读全文
posted @ 2020-06-23 00:33 范仁义 阅读(284) 评论(0) 推荐(0) 编辑
摘要:python疑难问题 2、字典排序 一、总结 一句话总结: 首先用字典的items方法将字典转换成元组列表,然后用sorted方法将元组列表按照元组的第0号元素排序,最后将元组列表转化成字典 即可 dict1={"name":"zs","age":18,"city":"深圳","tel":"1366 阅读全文
posted @ 2020-06-23 00:30 范仁义 阅读(375) 评论(0) 推荐(0) 编辑
摘要:python疑难问题 1、遍历列表的三种方式 一、总结 一句话总结: 方法一、直接遍历列表:for i in list1,i代表索引,list1.index(i)可以得到索引对应的值 方法二、遍历索引:for i in range(len(list1)),i代表索引,list1[i]代表索引对应的值 阅读全文
posted @ 2020-06-22 16:41 范仁义 阅读(1031) 评论(0) 推荐(0) 编辑
摘要:吐血整理:110道python面试题(带答案) 一、总结 一句话总结: 人生如负重致远不可急躁,但是要抓紧干活。 1、一行代码实现1--100之和? sum(range(1,101)) 2、如何在一个函数内部修改全局变量? 函数内部global声明, global a; a=4; a=5 def f 阅读全文
posted @ 2020-06-22 05:23 范仁义 阅读(1007) 评论(0) 推荐(2) 编辑
摘要:50道Python面试题集锦(附答案) 一、总结 一句话总结: 人生如负重致远不可急躁,但是要抓紧干活。 1、如何在Python中管理内存? python中的内存管理由Python私有堆空间管理。所有Python对象和数据结构都位于私有堆中。程序员无权访问此私有堆。 Python还有一个内置的垃圾收 阅读全文
posted @ 2020-06-22 00:07 范仁义 阅读(1832) 评论(0) 推荐(0) 编辑
摘要:Python中的enumerate函数 一、总结 一句话总结: 将可循环序列sequence以start开始分别列出序列数据和数据下标 sequence效果:['Spring', 'Summer'] => [(0, 'Spring'), (1, 'Summer')] # seasons = ['Sp 阅读全文
posted @ 2020-06-21 22:17 范仁义 阅读(872) 评论(0) 推荐(0) 编辑
摘要:日常英语 200621(quasar:基于VUE的UI组件库,可以很好的跨平台) 一、总结 一句话总结: quasar:英 /ˈkweɪzɑː(r)/ :n. [天] 类星体;恒星状球体 1、electron:js做桌面端应用? electron:英 /ɪˈlektrɒn/ :n. 电子 2、先序遍 阅读全文
posted @ 2020-06-21 04:41 范仁义 阅读(279) 评论(0) 推荐(0) 编辑
摘要:python的sort与sorted使用 一、总结 一句话总结: Python的list内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列 1、sort方法排序实例? [3, 5, 1, 4, 2].sort() [3, 5, 1, 4, 阅读全文
posted @ 2020-06-21 04:35 范仁义 阅读(195) 评论(0) 推荐(0) 编辑
摘要:python数据存储特点 一、总结 一句话总结: python对已经存储的内容,再次出现会用原地址 str1="abcdbaba" for i in str1: print(str1.index(i),i,id(i)) 0 a 21576832 1 b 21609856 2 c 21531296 3 阅读全文
posted @ 2020-06-20 03:18 范仁义 阅读(94) 评论(0) 推荐(0) 编辑
摘要:Python中的单引号和双引号有什么区别 一、总结 一句话总结: 在Python中使用单引号或双引号是没有区别的,都可以用来表示一个字符串。可能就引号嵌套的时候,不同引号嵌套的时候嵌套方便一点。 二、Python中的单引号和双引号有什么区别 转自或参考:Python中的单引号和双引号有什么区别htt 阅读全文
posted @ 2020-06-19 18:41 范仁义 阅读(1716) 评论(0) 推荐(0) 编辑
摘要:VSCode中tab自动补全html代码设置 一、总结 一句话总结: 请注意在VsCode新版本中按Tab不再默认启用Emmet展开缩写!需要在首选项配置中将emmet.triggerExpansionOnTab设置为true值! 二、VSCode中tab自动补全html代码设置 博客对应课程的视频 阅读全文
posted @ 2020-06-19 16:02 范仁义 阅读(2374) 评论(0) 推荐(0) 编辑
摘要:Python中的引用 一、总结 一句话总结: python中全部都是传引用,没有传值。 二、关于Python中的引用 转自或参考:关于Python中的引用 - 东去春来 - 博客园https://www.cnblogs.com/yuyan/archive/2012/04/21/2461673.htm 阅读全文
posted @ 2020-06-19 03:32 范仁义 阅读(487) 评论(0) 推荐(0) 编辑
摘要:python 字典操作方法详解 一、总结 一句话总结: 字典就是键值对映射 ,像js和php中的键值对数组:{'name':'jamnes','age':'32'} 1、python字典的增删改查? 定义:info ={'name':'jamnes','age':'32','work':'baske 阅读全文
posted @ 2020-06-18 22:47 范仁义 阅读(739) 评论(0) 推荐(0) 编辑
摘要:python 集合操作方法详解 一、总结 一句话总结: 作用:python中的集合概率和c++等语言里面都是一样的 定义:nums = [1,2,3,4,5,6,7] num_set = set(nums) num_set1 = {1,2,3,4,5,6,7} 增:num_set.add(8) 删: 阅读全文
posted @ 2020-06-18 22:21 范仁义 阅读(683) 评论(0) 推荐(0) 编辑
摘要:python 字符串操作方法详解 一、总结 一句话总结: python中的字符串就是字符数组,有切片操作,还有字符串对应的各个函数 1、反转字符串 s = '1234567890' print s[::-1] 0987654321 二、python 字符串操作方法详解 转自或参考:python 字符 阅读全文
posted @ 2020-06-18 21:31 范仁义 阅读(735) 评论(0) 推荐(0) 编辑
摘要:python 列表操作方法详解 一、总结 一句话总结: 列表增:b_list = ['a','b','c','d'] 列表删:del b_list[2] 列表改:b_list[0] = 123 列表查:print(b_list[1:3]) #['b', 'c']:遍历:for value in b_ 阅读全文
posted @ 2020-06-18 21:25 范仁义 阅读(1462) 评论(0) 推荐(0) 编辑
摘要:python中pip与pip3 的区别 一、总结 一句话总结: 1、pip是python的包管理工具,pip和pip3版本不同,都位于Scripts\目录下: 2、如果系统中只安装了Python2,那么就只能使用pip。 3、如果系统中只安装了Python3,那么既可以使用pip也可以使用pip3, 阅读全文
posted @ 2020-06-18 16:13 范仁义 阅读(2160) 评论(0) 推荐(0) 编辑
摘要:Python游戏编程-初步认识pygame 一、总结 一句话总结: Pygame 是一组用来开发游戏软件的 Python 程序模块,基于 SDL 库的基础上开发。 Pygame 允许你在 Python 程序中创建功能丰富的游戏和多媒体程序,Pygame 是一个高可移植性的模块可以支持多个操作系统。用 阅读全文
posted @ 2020-06-18 15:57 范仁义 阅读(1300) 评论(0) 推荐(0) 编辑
摘要:python语法相关 4、 一、总结 一句话总结: 人生如负重致远不可急躁 1、为什么要使用静态方法呢? 静态方法和类以及实例对象没有交互,提高效率 由于静态方法主要来存放逻辑性的代码,本身和类以及实例对象没有交互, 也就是说,在静态方法中,不会涉及到类中方法和属性的操作 数据资源能够得到有效的充分 阅读全文
posted @ 2020-06-18 15:37 范仁义 阅读(155) 评论(0) 推荐(0) 编辑
摘要:python中的__slots__使用及其定义 一、总结 一句话总结: 如果要限制在运行的时候给类添加属性,Python允许在定义class的时候,定义一个特殊的_slots__变量,来限制该class实例能添加的属性。 class Player2(object): __slots__ = ['ui 阅读全文
posted @ 2020-06-18 15:14 范仁义 阅读(429) 评论(0) 推荐(0) 编辑
摘要:Python用户自定义异常 一、总结 一句话总结: 用户自定义异常类型,只要该类继承了Exception类即可 class TooLongExceptin(Exception): "this is user's Exception for check the length of name " def 阅读全文
posted @ 2020-06-18 12:39 范仁义 阅读(713) 评论(0) 推荐(0) 编辑
摘要:python - 异常处理的语句 一、总结 一句话总结: 将可能出错的代码放到try里面,except可以指定类型捕获异常,可以将异常结果存在文档中。 import time try: # 如果你觉得代码可能出现问题, 那么放在try语句中, 只执行一次; print(s) #可能NameError 阅读全文
posted @ 2020-06-18 12:17 范仁义 阅读(418) 评论(0) 推荐(0) 编辑
摘要:Python中的__new__方法 一、总结 一句话总结: __new__方法用于创建实例对象,__new__方法在创建类实例对象时由Python解释器自动调用 1、python创建对象比如p1=Person()主要做了哪些工作? 首先调用Person的__new__方法,该方法通过object.n 阅读全文
posted @ 2020-06-18 11:52 范仁义 阅读(240) 评论(0) 推荐(0) 编辑
摘要:通俗的讲解Python中的__new__()方法 一、总结 一句话总结: a、可以发现__new__方法是传入类(cls),而__init__方法传入类的实例化对象(self), b、相当于__new__是开辟疆域的大将军,而__init__是在这片疆域上辛勤劳作的小老百姓, c、只有__new__ 阅读全文
posted @ 2020-06-18 11:39 范仁义 阅读(239) 评论(0) 推荐(0) 编辑
摘要:python语法相关 3、 一、总结 一句话总结: 人生如负重致远不可急躁 1、python中的匿名函数? lambda 参数1,参数2,参数3:执行代码语 匿名函数冒号后面的表达式有且只有一个,并且是直接return这个表达式的结果 test=lambda x,y:print(x+y) test( 阅读全文
posted @ 2020-06-18 11:27 范仁义 阅读(191) 评论(0) 推荐(0) 编辑
摘要:Python私有属性和私有方法 一、总结 一句话总结: 在 定义属性或方法时,在 属性名或者方法名前 增加 两个下划线,定义的就是 私有 属性或方法 class Women: def __init__(self, name): self.name = name # 不要问女生的年龄 self.__a 阅读全文
posted @ 2020-06-18 11:06 范仁义 阅读(357) 评论(0) 推荐(0) 编辑
摘要:Python 实例方法、类方法、静态方法的区别与作用 一、总结 一句话总结: 实例方法:第一个参数必须是实例对象,该参数名一般约定为“self”,通过它来传递实例的属性和方法(也可以传类的属性和方法) 类方法:使用装饰器@classmethod。第一个参数必须是当前类对象,该参数名一般约定为“cls 阅读全文
posted @ 2020-06-18 10:58 范仁义 阅读(234) 评论(0) 推荐(0) 编辑
摘要:python中的property属性 一、总结 一句话总结: @property装饰器就是负责把一个方法变成属性调用的。@property定义get方法,@score.setter定义score属性的set方法 class Student(object): def __init__(self, sc 阅读全文
posted @ 2020-06-18 10:41 范仁义 阅读(249) 评论(0) 推荐(0) 编辑
摘要:python语法相关 1、 一、总结 一句话总结: 不要务虚名而致实祸 1、python中列表、元组、字典、集合的关系? 列表就相当于其它语言中的数组:用中括号[]表示 元组与列表类似,不同之处在于元组的元素不能修改:用原括号()表示 字典就是其它语言中的键值对:用大括号{}表示 集合就是其它语言中 阅读全文
posted @ 2020-06-17 19:07 范仁义 阅读(166) 评论(0) 推荐(0) 编辑
摘要:python语法相关 2、 一、总结 一句话总结: 不要务虚名而致实祸 1、python中的for循环? for i in range(5,9) : python里的for循环也可以接else语句,python里的while循环也可接else语句 循环结构 while 判断条件(condition) 阅读全文
posted @ 2020-06-17 19:06 范仁义 阅读(165) 评论(0) 推荐(0) 编辑
摘要:网站部署测试 1、apache如何部署网站 一、总结 一句话总结: 下载好phpstudy,phpstudy里面配置好网站(比如域名test.com),然后将网站文件放到软件(包含apache)对应的www目录,在浏览器上访问test.com即可访问 二、apache如何部署网站 博客对应课程的视频 阅读全文
posted @ 2020-06-16 13:38 范仁义 阅读(304) 评论(0) 推荐(0) 编辑
摘要:Python人工智能参考 循环神经网络(RNN)基础篇 一、总结 一句话总结: 循环神经网络的隐藏层的值s不仅仅取决于当前这次的输入x,还取决于上一次隐藏层的值s。权重矩阵 W就是隐藏层上一次的值作为这一次的输入的权重。 1、有神经网络的情况下,为什么需要循环神经网络? 普通神经网络只能单独的取处理 阅读全文
posted @ 2020-06-16 00:42 范仁义 阅读(781) 评论(0) 推荐(0) 编辑
摘要:Python人工智能参考 3、人工智能知识注意 一、总结 一句话总结: 人就是太容易自以为是,越无知,越愚蠢,越容易自以为是。像《三国演义》里面的袁术和袁绍就是这样的典范。生活中人也很容易这样。 1、人工智能做脸部识别的实质? 简单的求导和简单的矩阵运算,合在一起居然可以做脸部识别 2、求导数为什么 阅读全文
posted @ 2020-06-15 21:25 范仁义 阅读(190) 评论(0) 推荐(0) 编辑
摘要:Python人工智能参考 什么是词向量 一、总结 一句话总结: 词向量技术是将词转化成为稠密向量,并且对于相似的词,其对应的词向量也相近。 1、机器学习中词的两种表示形式? 离散表示:向量中只有一个维度的值为1,其余维度为0,这个维度就代表了当前的词。苹果[0,1,0,0,0,……] 分布式表示:分 阅读全文
posted @ 2020-06-15 21:14 范仁义 阅读(525) 评论(0) 推荐(0) 编辑
摘要:Python人工智能参考 卷积神经网络 一、总结 一句话总结: 卷积神经网络(Convolutional Neural Networks)是一种深度学习模型或类似于人工神经网络的多层感知器,常用来分析视觉图像 卷积神经网络中 上层的点只对应下层的几个点,表示一个特征 1、卷积神经网络中的池化的作用是 阅读全文
posted @ 2020-06-15 17:08 范仁义 阅读(598) 评论(0) 推荐(0) 编辑
摘要:Python人工智能参考 2、人工智能知识注意 一、总结 一句话总结: 机器学习常用的算法就十几个,而且还是解决不同问题的,所以学起来其实并不难 1、矩阵和求导的关系? 对矩阵求导就是求矩阵的转置 2、人工智能和微积分和线性代数的关系? 微积分和线性代数的关系:函数可以多项展开变成多项式,多项式肯定 阅读全文
posted @ 2020-06-15 15:44 范仁义 阅读(153) 评论(0) 推荐(0) 编辑
摘要:Python人工智能参考 决策树 一、总结 一句话总结: 决策树是一种机器学习的方法。决策树的生成算法有ID3, C4.5和CART等。决策树可以帮助我们解决分类与回归两类问题。 决策树是一种树形结构,其中每个内部节点表示一个属性上的判断,每个分支代表一个判断结果的输出,最后每个叶节点代表一种分类结 阅读全文
posted @ 2020-06-14 15:54 范仁义 阅读(360) 评论(0) 推荐(0) 编辑
摘要:Python人工智能参考 线性回归(Linear Regression) 一、总结 一句话总结: 线性回归是回归问题中的一种,线性回归假设目标值与特征之间线性相关,即满足一个多元一次方程。y=wx+b 1、什么是回归分析? a、【研究因变量和自变量之间的关系】:回归分析是一种预测性的建模技术,它研究 阅读全文
posted @ 2020-06-14 15:33 范仁义 阅读(808) 评论(0) 推荐(0) 编辑
摘要:Python人工智能参考 分类和回归的区别 一、总结 一句话总结: 定量输出称为回归,或者说是连续变量预测;比如预测明天的气温是多少度,这是一个回归任务; 定性输出称为分类,或者说是离散变量预测。比如预测明天是阴、晴还是雨,就是一个分类任务。 二、分类和回归的区别 转自或参考:回归(regressi 阅读全文
posted @ 2020-06-14 14:28 范仁义 阅读(1104) 评论(0) 推荐(0) 编辑
摘要:Python人工智能参考 最小二乘法小结 一、总结 一句话总结: 最小二乘法是用来做函数拟合或者求函数极值的方法。在机器学习,尤其是回归模型中,经常可以看到最小二乘法的身影 1、最小二乘法矩阵法? 最小二乘法矩阵法比代数法要简洁,且矩阵运算可以取代循环,所以现在很多书和机器学习库都是用的矩阵法来做最 阅读全文
posted @ 2020-06-14 11:50 范仁义 阅读(454) 评论(0) 推荐(0) 编辑
摘要:Python人工智能参考 最小二乘法 一、总结 一句话总结: 1、最小二乘法:目标函数=∑(观测值−理论值)^2 2、最小二乘法求导:对最小二乘法求导之后,就是求算术平均数了,所以可以初步理解为算术平均数使波动最小 1、最小二乘法的作用? 用于拟合曲线:找一些点适合的曲线,比如这些点对应的曲线是一次 阅读全文
posted @ 2020-06-14 11:38 范仁义 阅读(420) 评论(0) 推荐(0) 编辑
摘要:Python人工智能参考 1、人工智能基础知识 一、总结 一句话总结: 【具体知识用到的时候再去看】:人工智能里面用到的数学知识非常有限,需要的时候仔细的去看去复习,无论是微积分、还是线性代数、还是概率论,具体知识用到的时候再去看 1、对抗神经网络用于生成真实人脸? 一方面用一个生成器去生成人脸,一 阅读全文
posted @ 2020-06-14 00:56 范仁义 阅读(427) 评论(0) 推荐(0) 编辑
摘要:算法注意 5、动态规划填表的时候,对于能够填表的点才填表 一、总结 一句话总结: 动态规划填表的时候,对于能够填表的点才填表,不能填表的点比如初始状态就不能动(比如过河卒) 1、f(n)=f(n-1)+f(n-2)+...+f(n-k)在写成代码的注意点是什么? 这里的第一层循环i代表n,第二层循环 阅读全文
posted @ 2020-06-13 14:30 范仁义 阅读(201) 评论(0) 推荐(0) 编辑
摘要:算法注意 4、解决算法bug的一条思路(除了日志,二分法查bug) 一、总结 一句话总结: 遇到代码bug,打印前几百个结果,一下子就知道错在哪了,比如高精度做斐波那契数列 1、memset(f,-1, sizeof(f));? memset的sizeof在最后,要设置的值在中间 2、memset的 阅读全文
posted @ 2020-06-13 14:26 范仁义 阅读(209) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 8.4、过河卒-递推解法取正 一、总结 一句话总结: 过河卒递推解法取正就是将过河卒递推表达式中负数的情况转化成正数的情况,将整个图右下移2,也就是将每个点的横纵坐标加2,这样就转换成全是正数的情况了 #include <iostream> #include <cstring> us 阅读全文
posted @ 2020-06-13 13:32 范仁义 阅读(478) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 8.3、过河卒-递推解法 一、总结 一句话总结: 过河卒的递推解法我们选用动态规划,动态规划就是保存中间状态的递推解法,这题递推表达式非常明确,所以动态规划做起来也非常容易 1 /* 2 3 状态: 4 如果设f[i][j]表示走到(i,j)点的路径总数 5 6 递推表达式(状态转移 阅读全文
posted @ 2020-06-13 11:22 范仁义 阅读(457) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 8.2、过河卒-搜索解法取正 一、总结 一句话总结: 过河卒搜索解法取正就是将过河卒递推表达式中负数的情况转化成正数的情况,可以通过给图上的每个点加上一个数来实现,这样就少了很多负数的判断,并且对结果也没有影响 1 #include <iostream> 2 #include <cs 阅读全文
posted @ 2020-06-12 23:40 范仁义 阅读(245) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 8.1、过河卒-搜索解法 一、总结 一句话总结: 过河卒搜索的解法可以先思考没有马的简单情况,有马的情况,只是递归的终止条件从起点变成了起点或者马控制的区域 #include <iostream> #include <cstring> using namespace std; int 阅读全文
posted @ 2020-06-12 19:28 范仁义 阅读(374) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 过河卒-递推(动态规划)写法常见易错点 一、总结 一句话总结: 对于有负数情况的递推(动态规划)问题,比如过河卒,f[i][j]=f[i-1][j]+f[i][j-1],采用的策略一般都是加数让它变成正数 1、直接填表更新状态会有问题,那些被马控制的点不能被更新状态,始终要是0? | 阅读全文
posted @ 2020-06-12 19:15 范仁义 阅读(312) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 过河卒-搜索(递归)写法常见易错点 一、总结 一句话总结: f[i][j]=f[i-1][j]+f[i][j-1]这样的递推表达式,取数之前一定要保证数是存在的 1、表示马的控制点如何表示? int hx[9]={0,-2,-1,1,2,2,1,-1,-2}; int hy[9]={ 阅读全文
posted @ 2020-06-12 19:00 范仁义 阅读(724) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 7.3、进阶跳台阶 一、总结 一句话总结: A、对于这些递推规律一眼看不出的问题,我们可以枚举前几项来找规律, B、本题(进阶跳台阶)中,我们枚举前几项之后,轻松发现数字规律f(n)=2^(n-1),递推表达式f(n)=f(n-1)+f(n-2)+...+f(1)+1 #includ 阅读全文
posted @ 2020-06-12 11:08 范仁义 阅读(332) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 7.4、变态跳台阶 一、总结 一句话总结: 1、变态跳台阶的问题有了之前跳台阶和进阶跳台阶的问题做铺垫,递推表达式非常好想:f(n)=f(n-1)+f(n-2)+...+f(n-k), 2、根据f(n)=f(n-1)+f(n-2)+...+f(n-k),所以我们需要知道前k项,从而确 阅读全文
posted @ 2020-06-12 11:07 范仁义 阅读(282) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 7.2、跳台阶-高精度加法 一、总结 一句话总结: a、这个跳台阶的问题里面没有取模,n大概40多的时候结果就超过int了,而本题n等于5000,所以要用高精度, b、而因为递推关系式f(n)=f(n-1)+f(n-2)里面是加法,所以用高精度加法 1 #include <iostr 阅读全文
posted @ 2020-06-11 18:33 范仁义 阅读(273) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 7.1、跳台阶 一、总结 一句话总结: 跳台阶的问题,枚举前几项之后,就找到规律f(n)=f(n-1)+f(n-2),也就是斐波那契数列 #include <iostream> #include <cstring> #include <algorithm> using namespa 阅读全文
posted @ 2020-06-11 18:27 范仁义 阅读(400) 评论(0) 推荐(0) 编辑
摘要:算法疑难(c++实现) 3、高精度加法 一、总结 一句话总结: A、高精度加法的原理就是小学学的竖式加法的操作,只是编程实现而已,输入的话,就用字符串 B、但是计算的时候,我们可以用数组,数组中的每一位存储一个数字,相加就逐位相加,然后进位就好 #include <iostream> #includ 阅读全文
posted @ 2020-06-11 14:11 范仁义 阅读(590) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 6.8、斐波那契数列-矩阵快速幂 一、总结 一句话总结: 斐波那契数列的矩阵快速幂的解法,也就是将递推表达式化成矩阵的幂操作和乘法操作,利用快速幂,可以得到O(logn)的解法 1 #include <iostream> 2 #include <cstring> 3 using na 阅读全文
posted @ 2020-06-10 18:02 范仁义 阅读(580) 评论(0) 推荐(0) 编辑
摘要:bug调试 1、斐波那契数列的矩阵快速幂解法bug 一、总结 一句话总结: 发现问题出在矩阵的快速幂里面,因为函数传n过去的时候指定的是int,而本题的n<2^63,所以n本来应该是long long类型的 错误原因:这里的n传参写成了int //矩阵的快速幂 //这里的n写成int类型有问题,这里 阅读全文
posted @ 2020-06-10 16:59 范仁义 阅读(281) 评论(0) 推荐(0) 编辑
摘要:算法疑难(c++实现) 2、矩阵乘法 一、总结 一句话总结: 矩阵乘法就是按照矩阵相乘的规律,一步步来做的,也就是拿矩阵a的每一行乘以矩阵b的每一列,并且把矩阵a的每一行里面的每一个元素都和矩阵b里面每一列的每一个元素都一一相乘 Matrix multiply(Matrix a,Matrix b){ 阅读全文
posted @ 2020-06-09 17:21 范仁义 阅读(1206) 评论(0) 推荐(0) 编辑
摘要:算法疑难(c++实现) 1、快速幂 一、总结 一句话总结: 比如在求a^11的时候,快速幂就是利用11的二进制1011,也即11=2º×1+2¹×1+2²×0+2³×1=1+2+8,将a^11转化为a^1*a^2*a^8,从而用O(logn)的时间复杂度求解 #include <iostream> 阅读全文
posted @ 2020-06-09 13:51 范仁义 阅读(228) 评论(0) 推荐(0) 编辑
摘要:快速幂 一、总结 一句话总结: a^11=a^(2^0+2^1+2^3),我们将a¹¹转化为算 a2^0*a2^1*a2^3,原来算11次,现在算三次 a^11=a^(2^0+2^1+2^3),11的二进制是1011,11 = 2³×1 + 2²×0 + 2¹×1 + 2º×1,因此,我们将a¹¹转 阅读全文
posted @ 2020-06-09 10:11 范仁义 阅读(163) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 6.7、递推和递归的关系 一、总结 一句话总结: 递归元素之间的关系式就是递推表达式,或者说递推可以用递归来实现,当然递推也可以不用递归来实现,比如用普通循环来实现 1、递推和递归主要作用分别是什么? 递推主要指是找规律来找到递推表达式,从而求解问题,是一种解决问题的方式 递归主要指 阅读全文
posted @ 2020-06-09 08:47 范仁义 阅读(448) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 6.6、斐波那契数列-记忆化递归 一、总结 一句话总结: 记忆化递归,就是把已经计算的中间状态保存下来,下次需要的时候就直接拿这个结果,就避免了递归中的重复计算中间状态 #include <iostream> #include <cstring> using namespace st 阅读全文
posted @ 2020-06-08 22:15 范仁义 阅读(697) 评论(0) 推荐(1) 编辑
摘要:算法与数据结构 6.5、斐波那契数列-递归解法 一、总结 一句话总结: 递推法的递推表达式就是递归的各个元素之间的关系,所以递推表达式明确之后,递归的代码也就特别好写了 #include <iostream> using namespace std; const int mod=1000000007 阅读全文
posted @ 2020-06-08 17:57 范仁义 阅读(350) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 6.4、斐波那契数列-三个变量 一、总结 一句话总结: A、斐波那契数列的三个变量解法,我们将f[3]用3个变量a、b、c来代替,这个时候就不能通过取模(%3)来自动变换位置了 B、这个时候我们可以保留f(n)和f(n-1)来做下一轮的f(n-1)和f(n-2) #include < 阅读全文
posted @ 2020-06-08 16:28 范仁义 阅读(523) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 6.3、递推和动态规划的关系 一、总结 一句话总结: 动态规划可以看做是一种特殊的递推,动态规划可以看做保存中间状态(中间结果)的递推 /* 上述代码也就是这个题目动态规划的写法 动态规划里面有状态,状态转移方程 递推里面初始值,递推表达式 其实动态规划里面的状态转移方程,就是递推表 阅读全文
posted @ 2020-06-08 14:56 范仁义 阅读(520) 评论(0) 推荐(1) 编辑
摘要:算法与数据结构 6.2、斐波那契数列-滚动数组优化 一、总结 一句话总结: a、因为递推表达式f[i]=f[i-1]+f[i-2]中只用到了f[i]、f[i-1]和f[i-2]三个元素,所以可以用含有三个元素的数组来优化 b、滚动数组的代码修改也很简单,直接在递推表达式有i的位置%3即可,f[i%3 阅读全文
posted @ 2020-06-08 14:28 范仁义 阅读(364) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 6.1、斐波那契数列-递推解法 一、总结 一句话总结: 波那契数列递推的关系式F(n)=F(n-1)+F(n-2)已经有了,所以明确一下循环的边界条件,递推的代码就很好敲了 #include <iostream> using namespace std; const int mod= 阅读全文
posted @ 2020-06-08 10:19 范仁义 阅读(779) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 5、递推 一、总结 一句话总结: 递推算法就是对于一个问题,我们找到它数学对应的递推表达式,也就是相邻几项的关系。 递推算法就是对于一个问题,我们找到它数学对应的递推表达式, 也就是相邻几项的关系。 递推算法避开了求通项公式的麻烦,把一个复杂的问题的求解, 分解成了连续的若干步简单运 阅读全文
posted @ 2020-06-08 09:14 范仁义 阅读(607) 评论(0) 推荐(0) 编辑
摘要:C++指针相关问题 一、总结 一句话总结: a、数组名是这个数组的首地址:a[3][4]:a int(*)[4]、&a int(*)[3][4]、a[0] int*、a[0][0] int b、int ** 表示指向指针的指针:int m = 1; int *p = &m; int ** a = & 阅读全文
posted @ 2020-06-06 14:03 范仁义 阅读(208) 评论(0) 推荐(0) 编辑
摘要:C++ new一个数组 一、总结 一句话总结: A、为了让new分配一个数组对象,我们需要在类型名之后跟一对方括号,在其中指明要分配的对象的数目。 B、int *p = new int[INT_NUM];//方括号中的数必须是整型,但不必是常量 1、c++释放分配的空间? delete p; //p 阅读全文
posted @ 2020-06-06 10:56 范仁义 阅读(12370) 评论(0) 推荐(2) 编辑
摘要:指针数组和数组指针的区别 一、总结 一句话总结: 指针数组:int*[]:int* a[3]:array of pointers,即用于存储指针的数组,也就是数组元素都是指针 数组指针:int(*)[]:int (*a)[3]:a pointer to an array,即指向数组的指针 1、如何理 阅读全文
posted @ 2020-06-06 09:01 范仁义 阅读(616) 评论(0) 推荐(0) 编辑
摘要:C++ new的用法 一、总结 一句话总结: new其实就是告诉计算机开辟一段新的空间,但是和一般的声明不同的是,new开辟的空间在堆上,而一般声明的变量存放在栈上。 1、c++ new关键字和一般声明变量的区别是什么? new开辟的空间在堆上,而一般声明的变量存放在栈上。 2、c++ new出来的 阅读全文
posted @ 2020-06-06 08:53 范仁义 阅读(1120) 评论(0) 推荐(0) 编辑
摘要:前端工程化的理解 一、总结 一句话总结: 前端工程化是使用软件工程的技术和方法来进行前端的开发流程、技术、工具、经验等规范化、标准化,其主要目的为了提高效率和降低成本,即提高开发过程中的开发效率,减少不必要的重复工作时间。 而前端工程本质上是软件工程的一种,因此我们应该从软件工程的角度来研究前端工程 阅读全文
posted @ 2020-06-04 17:41 范仁义 阅读(1287) 评论(1) 推荐(2) 编辑
摘要:算法注意 3、分治的本质 一、总结 一句话总结: 分治本质上还是枚举,只是和普通枚举的枚举方向不同,仅此而已 1、为什么包含mid的序列,转化成求出区间[i..mid]的最大值与区间[mid+1..j]的最大值也可? 包含mid的子序列分为【包含mid且包含mid+1】和【包含mid且不包含mid+ 阅读全文
posted @ 2020-06-04 17:31 范仁义 阅读(179) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 4.9、最大子段和-dp空间优化 一、总结 一句话总结: 在最大字段和的动态规划的解法的代码中,我们发现用来做动态规划的数组f在代码中只用到了f[i]和f[i-1],所以我们可以用只有两个元素的滚动数组来优化f数组 /* 我们来看一眼代码: 代码中用到a数组位置除了a[1]这个固定的 阅读全文
posted @ 2020-06-04 17:08 范仁义 阅读(512) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 4.8、最大子段和-贪心和dp区别 一、总结 一句话总结: A、最大字段和的贪心解法就是只考虑当前对于a[i]最优的情况,是选择s[i-1]还是不选择s[i-1]来得到局部最优解 B、最大字段和的动态规划解法就是在全局统筹的基础上,找到规律,通过规律设置好状态,找到状态转移的方程 二 阅读全文
posted @ 2020-06-04 15:01 范仁义 阅读(297) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 4.7、最大子段和-动态规划 一、总结 一句话总结: a、最大子段和有对应的动态规划的解法,找到题目的规律, b、根据规律设置状态f[i]表示以第i个元素结尾的子序列的最大值, c、那么状态转移方程为f[i]=max(f[i-1]+a[i],a[i]) (2<=i<=n) #incl 阅读全文
posted @ 2020-06-04 13:11 范仁义 阅读(237) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 4.6、最大子段和-贪心优化 一、总结 一句话总结: 1、时间方面优化:循环可以合并(循环方向一致,循环最大值也是,并且两个循环之间没有什么逻辑操作代码) 2、空间方面优化:代码中只用到了a[i],所以a[]数组可以用一个变量来代替 #include <iostream> #incl 阅读全文
posted @ 2020-06-04 08:52 范仁义 阅读(275) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 4.5、最大子段和-贪心解法 一、总结 一句话总结: 贪心求解最大连续子序列的和,其实贪心得到的局部最优解是所有以a[i]结尾的子序列和最大的s[i],在s[i]中找最大的就是全局最优解,时间复杂度为O(n) 算法步骤: 1、找到以a[i-1]结尾的连续非空子序列中和最大s[i-1] 阅读全文
posted @ 2020-06-04 07:42 范仁义 阅读(1086) 评论(0) 推荐(0) 编辑
摘要:基于录制的前端测试工具UI Recorder 一、总结 一句话总结: 前端测试,记录用户行为,也就是用户行为的录制和回放 二、基于录制的前端测试工具UI Recorder 转自或参考:基于录制的前端测试工具UI Recorder - 简书https://www.jianshu.com/p/14122 阅读全文
posted @ 2020-06-03 17:45 范仁义 阅读(376) 评论(0) 推荐(0) 编辑
摘要:算法注意 2、遇到算法里面一些不懂的代码怎么办 一、总结 一句话总结: 代码有疑问的位置,带点实例在程序里面debug一下,代码每句的意思就异常清楚了 1、枚举法的核心关键? 对于枚举法,弄清楚枚举变量、枚举范围、枚举判断条件之后,代码非常好写,结合算法思路,的确非常棒 2、枚举非空数字连续子段的时 阅读全文
posted @ 2020-06-03 17:34 范仁义 阅读(267) 评论(0) 推荐(0) 编辑
摘要:算法注意 1、取用数据之前一定要保证数据存在 一、总结 一句话总结: 动态规划中,f[j]=f[j] + f[j-w[i]]结构,肯定要保证j-w[i]>=0,也就是取数据之前,一定要保证数据是存在的 1、算法里面常常描述的状态是什么意思? |||-being (比如初始状态、中间状态、结束状态) 阅读全文
posted @ 2020-06-03 17:00 范仁义 阅读(157) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 4.4、最大子段和-分治优化原理 一、总结 一句话总结: 在本题中,分治能够优化枚举的原理就是分治策略创造了信息(比如本题第二种情况子序列一定包含mid),让我们可以拿这个信息将枚举从O(n^2)的算法优化到了O(n) 1 //下面代码是没用好分治创造的信息的分治法代码,只能过两个点 阅读全文
posted @ 2020-06-03 10:10 范仁义 阅读(273) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 4.3、最大子段和-分治解法 一、总结 一句话总结: 最大连续子序列的和有对应的分治解法,因为连续子序列只能是如下三种情况的一种:①完全处于序列的左半、②跨越序列中间、③完全处于序列的右半。取这三种情况里面的最大值,即可得到本题的解。 ①完全处于序列的左半:l<=i<=j<=mid 阅读全文
posted @ 2020-06-03 06:39 范仁义 阅读(225) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 4.2、最大子段和-枚举优化 一、总结 一句话总结: 对最大子段和的枚举优化,就是通过预处理来减少重复的计算 /* 枚举优化 可以把求和的那层循环去掉,我们可以对数据做预处理 用s[i]表示第一个数到第i个数这个序列的和 那么求s[i-j](第i个数到第j个数这个序列的和)的时候, 阅读全文
posted @ 2020-06-02 09:14 范仁义 阅读(222) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 4.1、最大子段和-枚举解法 一、总结 一句话总结: 枚举解法就是按照题目要求,枚举出子段,对子段进行求和,求出里面和最大的即可,思路简单,但是效率不高 枚举变量:每一段的起点、终点 枚举范围:起点:1-n,终点:起点-n 枚举判断条件: 求和得到每一段的和,在这些和里面选出最大的 阅读全文
posted @ 2020-06-02 08:35 范仁义 阅读(427) 评论(0) 推荐(0) 编辑
摘要:C++ 中头文件<bits/stdc++.h>的优缺点 一、总结 一句话总结: 1、bits/stdc++.h是部分C++中支持的一个几乎万能的头文件,包含所有的可用到的C++库函数,如<istream>/<ostream>/<stack>/<queue>等. 2、原理是在这个文件中包含了其它的头文 阅读全文
posted @ 2020-06-01 22:48 范仁义 阅读(2036) 评论(0) 推荐(0) 编辑
摘要:什么是uni-app? 一、总结 一句话总结: uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、H5、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉)等多个平台。 二、什么是uni-app? 转自或参考:什么是uni-app 阅读全文
posted @ 2020-06-01 21:47 范仁义 阅读(732) 评论(0) 推荐(0) 编辑
摘要:C++中的inline用法 一、总结 一句话总结: 在c/c++中,为了解决一些频繁调用的小函数大量消耗栈空间(栈内存(栈内存有限))的问题,特别的引入了inline修饰符,表示为内联函数。 1、c++内联函数inline的实质? |||-begin #include <stdio.h> //函数定 阅读全文
posted @ 2020-06-01 11:58 范仁义 阅读(403) 评论(0) 推荐(0) 编辑
摘要:算法与数据结构 3、砝码称重 一、总结 一句话总结: 砝码称重有基本的枚举解法,也有对应的01背包和多重背包的解法,对背包我们可以进行空间优化,对这题也可以进行bitset优化 /* C++的 bitset 在 bitset 头文件中,它是一种类似数组的结构, 它的每一个元素只能是0或1,每个元素仅 阅读全文
posted @ 2020-06-01 08:02 范仁义 阅读(1662) 评论(0) 推荐(1) 编辑

侧边栏

打赏

点击右上角即可分享
微信分享提示