E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
算法导论——python实践
算法导论
— 思考题3-3 根据渐近增长率排序
(根据渐近增长率排序)a.根据增长的阶来排序下面的函数,即求出满足g1=Ω(g2),g2=Ω(g3),…,g29=Ω(g30)g_1=Ω(g_2),g_2=Ω(g_3),…,g_{29}=Ω(g_{30})g1=Ω(g2),g2=Ω(g3),…,g29=Ω(g30)的函数的一种排序g1,g2,…,g30g_1,g_2,…,g_{30}g1,g2,…,g30。把你的表划分成等价类,使得函数f(n)f
yangtzhou
·
2020-06-30 06:39
算法导论
算法导论
— 15.2 矩阵链乘法
笔记本节给出了一个关于矩阵链相乘问题的动态规划算法。给定一个n个矩阵的矩阵链,要计算它们的乘积。矩阵乘法满足结合律,所以通过加括号,一个矩阵链的乘法可以按照不同的顺序进行。例如,4个矩阵的矩阵链,共有5种加括号的方式:加括号的方式对矩阵链乘法的时间代价产生巨大的影响。我们先来分析两个矩阵相乘的时间代价。下面的代码给出了两个矩阵相乘的标准算法。两个矩阵A和B只有相容,即A的列数等于B的行数时,才能相
yangtzhou
·
2020-06-30 06:39
算法导论
算法导论
— 15.5 最优二叉搜索树
###笔记二叉搜索树满足如下性质:假设xxx是二叉搜索树中的一个结点。如果lll是xxx的左子树的一个结点,那么l.key≤x.keyl.key≤x.keyl.key≤x.key。如果rrr是xxx的右子树的一个结点,那么r.key≥x.keyr.key≥x.keyr.key≥x.key。也就是说,二叉搜索树中的任意一个结点,它的左子树中的所有结点都不大于它,它的右子树中的所有结点都不小于它。下图
yangtzhou
·
2020-06-30 06:39
算法导论
算法导论
— 思考题4-1 递归式例子
(递归式例子)对下列每个递归式,给出T(n)T(n)T(n)的渐近上界和下界。假定n≤2n≤2n≤2时T(n)T(n)T(n)是常数。给出尽量紧确的界,并验证其正确性。a.T(n)=2T(n/2)+n4T(n)=2T(n/2)+n^4T(n)=2T(n/2)+n4b.T(n)=T(7n/10)+nT(n)=T(7n/10)+nT(n)=T(7n/10)+nc.T(n)=16T(n/4)+n2T(n
yangtzhou
·
2020-06-30 06:09
算法导论
算法导论
— 15.1 钢条切割
笔记本节给出一个寻找钢条最优切割方案的问题。公司购买长钢条,将其切割为短钢条出售。为简化分析,假设切割过程本身没有成本,并且切割下来的短钢条长度都为一英寸的整数倍。下表给出了不同长度的钢条的价格。钢条切割问题:给定一根长度为n英寸的长钢条,求最优切割方案,使得销售收益最大。注意,最优方案也有可能是完全不用切割。长度为n英寸的钢条有种切割方案,因为在距离钢条左端i(i=1,2,…,n-1)英寸处,我
yangtzhou
·
2020-06-30 06:09
算法导论
算法导论
— 4.5 用主方法求解递归式
笔记利用主定理可以对形如T(n)=aT(n/b)+f(n)T(n)=aT(n/b)+f(n)T(n)=aT(n/b)+f(n)的递归式直接求解。下面先给出主定理的描述。令a≥1a≥1a≥1和b>1b>1b>1是常数,f(n)f(n)f(n)是一个函数,T(n)T(n)T(n)是定义在非负整数上的递归式:T(n)=aT(n/b)+f(n)T(n)=aT(n/b)+f(n)T(n)=aT(n/b)+f
yangtzhou
·
2020-06-30 06:08
算法导论
算法导论
— 4.4 用递归树方法求解递归式
笔记在应用代入法求解递归式时,需要事先做出一个好的猜测。然而,有时候做出好的猜测是很困难的,此时可以考虑采用递归树方法。在递归树中,每个结点表示一个单一子问题的代价。创建递归树之后,对树的每层的各子问题的代价进行求和,得到每一层的代价,然后将所有层的代价加起来,得到整棵递归树的总代价,这个总代价就是递归式的解。当然,递归树方法是一种粗略的方法,因为递归树会引入一些“不精确”因素,这一点在后文再详细
yangtzhou
·
2020-06-30 06:08
算法导论
算法导论
— 思考题8-1 比较排序的概率下界
(比较排序的概率下界)在这一问题中,我们将证明对于给定的nnn个互异的输入元素,任何确定或随机的比较排序算法,其概率运行时间都有下界Ω(nlgn)Ω(n{\rmlg}n)Ω(nlgn)。首先来分析一个确定的比较排序算法AAA,其决策树为TATATA。假设AAA的输入的每一种排列情况都是等可能的。a.假设TATATA的每个叶结点都标有在给定的随机输入情况下到达该终点的概率。证明:恰有n!n!n!个叶
yangtzhou
·
2020-06-30 06:07
算法导论
算法导论
— 思考题8-3 变长数据项的排序
(变长数据项的排序)a.给定一个整数数组,其中不同的整数所包含的数字的位数可能不同,但该数组中,所有整数中包含的总数字位数为nnn。设计一个算法,使其可以在O(n)O(n)O(n)时间内对该数组进行排序。b.给定一个字符串数组,其中不同的字符串所包含的字符数可能不同,但所有字符串中的总字符个数为nnn。设计一个算法,使其可以在O(n)O(n)O(n)时间内对该数组进行排序。(注意:此处的顺度是指标
yangtzhou
·
2020-06-30 06:07
算法导论
算法导论
— 4.2 矩阵乘法的Strassen算法
笔记给定两个n×nn×nn×n正方矩阵AAA和BBB,这两个矩阵的乘法定义为其中下面是矩阵乘法的伪代码。很显然,执行SQUARE-MATRIX-MULTIPLY需要花费Θ(n3)Θ(n^3)Θ(n3)时间。然而,有一种方法可以花费更少的时间,这就是Strassen算法,它本质上也是一种分治法,它的时间复杂度为Θ(nlg7)=O(n2.81)Θ(n^{{\rmlg}7})=O(n^{2.81})Θ(
yangtzhou
·
2020-06-30 06:07
算法导论
算法导论
— 4.3 用代入法求解递归式
笔记代入法求解递归式分为两步:1)猜测解的形式。2)用数学归纳法证明猜测的解是正确的。例如,我们要确定递归式T(n)=2T(⌊n/2⌋)+nT(n)=2T(⌊n/2⌋)+nT(n)=2T(⌊n/2⌋)+n的上界。我们猜测其解为T(n)=O(nlgn)T(n)=O(n{\rmlg}n)T(n)=O(nlgn),这意味着存在正常数ccc和n0n_0n0,使得T(n)≤cnlgnT(n)≤cn{\rml
yangtzhou
·
2020-06-30 06:07
算法导论
算法导论
— 思考题8-5 平均排序
(平均排序)假设我们不是要完全排序一个数组,而只是要求数组中的元素在平均情况下是升序的。更准确地说,如果对所有的i=1,2,…,n−ki=1,2,…,n−ki=1,2,…,n−k有下式成立,我们就称一个包含nnn个元素的数组AAA为kkk排序的(kkk-sorted):∑j=ii+k−1A[j]k≤∑j=i+1i+kA[j]k\frac{\sum_{j=i}^{i+k-1}{A[j]}}{k}≤\
yangtzhou
·
2020-06-30 06:07
算法导论
算法导论
· 分支界限 · 旅行商问题
源代码#include#include#include#include#defineINF100000usingnamespacestd;intn;intmp[100][100];structnode{intvisp[22];//标记哪些点走了intst;//起点intst_p;//起点的邻接点inted;//终点inted_p;//终点的邻接点intk;//走过的点数intsumv;//经过路径
YDDUONG
·
2020-06-30 05:10
Algorithm
2016-11-24
好困,写完赶紧睡觉今天早上赶在第3节课前把项目用例描述写完了(:зゝ∠),感觉都快写哭了然后上《
算法导论
》讲了求单元路径最短问题,思想是“松弛技术”,然后又讲了每对求路径最短问题,笔记之后补,还有上机作业
Courage_CYY
·
2020-06-30 04:49
DFS与BFS详解(很不错的)
算法那些事儿转载至http://www.cnblogs.com/pengyingh/articles/2396432.html作者July---------------------咱们由BFS开始:首先,看下
算法导论
一书关于此
&代码收割机
·
2020-06-30 04:02
BFS
DFS
算法导论
笔记(二) : 优先级队列
1堆与优先级队列堆排序是一个不错的原地排序算法.但是一个实现较好的快速排序会优于堆排序。但是堆数据结构有一个非常重要的用处,就是作为高效的优先级队列.与堆一样优先级队列也有两种:最大优先级队列和最小优先级队列.2优先级队列及其操作优先级队列是一种用来维护由一组元素构成的集合S的数据结构.这一组元素的每一个都有一个关键字Key.一个最大优先级队列支持以下操作:(i)INSERT(S,x):把元素x插
方橙
·
2020-06-30 04:32
算法导论
算法导论
笔记(五) :基数排序与C++实现
1基数排序介绍基数排序是一种用在老式穿卡机上的算法。该算法在对每一位数进行排序的时候需要是稳定的:在该为相同的数的相对顺序不会变.因此可以使用上节的计数排序作为其子程序.下边演示一个基数排序的过程:2基数排序的过程计数排序的过程很简单。即从最低位到最高位的每一位进行计数排序.3算法实现#ifndef__RADIXSORT_H__#define__RADIXSORT_H__#include#incl
方橙
·
2020-06-30 04:32
算法导论
算法导论
笔记(四) : 计数排序
1计数排序概述计数排序假设待排序数组中每一个元素都是0到k间的一个整数.如果k=O(n),则计数排序运行的时间为O(n).2计数排序执行过程(i)填充辅助数组C(C的长度为K),数组A中的每一个元素都在C的对应位置加1.(ii)对C进行计算使得C[i]=C[i]+C[i-1](iii)从后向前遍历A数组,根据该元素的值找到C中对应位置的数。将该数字作为索引将当前元素填到结果数组B中.(iv)C中对
方橙
·
2020-06-30 04:32
算法导论
算法导论
笔记(六) :桶排序及其C++实现
1桶排序简介与计数排序类似,桶排序也是对输入数据做了某种假设.因此运行的很快.桶排序假设输入数据由一个随机过程产生.该过程将元素随机而独立的分布在[0,1)区间.2桶排序过程(i)将[0,1)区间划分为n个大小相同的区间(桶)(ii)将各元素放入对应的桶中.(iii)对每个桶里的元素进行排序(vi)一次列出各个桶里的元素下边是桶排序的一个实例:3完整代码#ifndef__BUCKETSORT_H_
方橙
·
2020-06-30 04:32
算法导论
算法导论
笔记(三) : 快速排序
1快速排序简介快速排序的最坏情况的运行时间为O(n^2),虽然这个最坏情况运行时间比较差。但快速排序通常是用于排序的最佳的实用选择.这是因为其平均性能相当好.期望的运行时间为O(nlgn)并且隐含的常数因子比较小.并且快速排序是就地排序.2快速排序过程快速排序基于以下分治模式:(i)分解:数组A[p,r]被划分为两个子数组A[p,q-1](所有元素小于A[q])和A[q+1,r](所有元素大于A[
方橙
·
2020-06-30 04:32
算法导论
java程序员必看基础书籍
2、《
算法导论
(第三版)》被很多acme
肖晓晓
·
2020-06-30 04:11
《
算法导论
》第二章思考题——逆序对(python实现)
设A[1..n]是一个包含n个不同数的数组。如果在iA[j],则(i,j)就称为A中的一个逆序对,给出任意一个数组,计算逆序对个数。借助归并排序思想可以得到O(nlogn)的最坏运行时间。归并排序的想法是先分开左右两个子序,每个子序列排序后再合并。这里求逆序对也是一样,分开后先计算每个子序内部的逆序对数量并将其从大到小进行排列,在合并时,计算子序之间的逆序对。假定在某步需要合并两个有序的子序列A=
xuqn0606
·
2020-06-30 04:09
算法
机器学习算法与
Python实践
之(五)k均值聚类(k-means)
一、k-means算法通常,人们根据样本间的某种距离或者相似性来定义聚类,即把相似的(或距离近的)样本聚为同一类,而把不相似的(或距离远的)样本归在其他类。我们以一个二维的例子来说明下聚类的目的。如下图左所示,假设我们的n个样本点分布在图中所示的二维空间。从数据点的大致形状可以看出它们大致聚为三个cluster,其中两个紧凑一些,剩下那个松散一些。我们的目的是为这些数据分组,以便能区分出属于不同的
西湖太极熊
·
2020-06-30 02:54
机器学习算法
九大排序算法再总结
blog.csdn.net/xiazdong本文是http://blog.csdn.net/xiazdong/article/details/7304239的补充,当年看了《大话数据结构》总结的,但是现在看了《
算法导论
xiazdong
·
2020-06-30 01:42
【算法导论】
leetcode53之最大连续子数组和
分治的方法在
算法导论
上面做过,将数组分成两个部分,分别求出最
windyear
·
2020-06-30 01:19
算法
算法设计经典书籍推荐
1.CLRS
算法导论
算法百科全书,只做了前面十几章的习题,便感觉受益无穷。2.Algorithms算法概论短小精悍,别据一格,准经典之作。一个坏消息:同
算法导论
,该书没有习题答案。
xiaoding133
·
2020-06-30 00:14
文章
[数据结构]稀疏矩阵乘法算法实现
算法名稀疏矩阵乘法SparseMatrixMultiplication分类数据结构复杂度O(n^2)形式与数据结构C++代码一维结构体存储特性极简封装不使用链表不需要转置计算过程容易理解具体参考出处《
算法导论
LeeLeeLee钟硕
·
2020-06-29 23:11
数据结构
LeetCode网站关于Tree的分析解答(1)深度搜索
具体的原理可以参考《
算法导论
》。对于Tree的深度搜索问题的解题模式:1)首先判断是否能够用深度搜索策略(DFS)解决问题。
wxcwys
·
2020-06-29 22:44
数据结构与算法
tree
红黑树的经典介绍
本文参考了《
算法导论
》中红黑树相关知识,加之自己的理解,然后以图文的形式对红黑树进行说明。本文的主要内容包括:红黑树的特性,红黑树的时间复杂度和它的证明,红黑树的左旋
长弓的坚持
·
2020-06-29 20:00
数据结构
红黑树旋转
左旋的伪代码《
算法导论
》:参考上面的示意图和下面的伪代码,理解“红黑树T的节点x进行左旋”是如
喜欢吃肉的饭
·
2020-06-29 19:09
数据结构&算法
数据结构和算法——学习资料(更新...........)
TheArtofComputerProgramming》(简称TAOCP)DonaldE.Knuth著,维基百科:https://zh.wikipedia.org/wiki/计算机程序设计艺术这是一套丛书,计划一共会出7卷,现在已经出了4卷《
算法导论
wjheha
·
2020-06-29 19:05
数据结构和算法
算法-排序-归并排序(MergeSort)分析
由于该算法比较简单,所以直接给出
算法导论
中的算法伪代码。后续将着重算法分析。
winnerbao
·
2020-06-29 18:12
算法与数据结构
如何用多线程实现归并排序
等我有时间了,一定要把《
算法导论
》啃完,这本书的印刷质量实在太好了,滑稽。
hujianbest
·
2020-06-29 18:12
算法思想
第三部分--数据结构-第10章--基本数据结构
说明:该系列博客整理自《
算法导论
(原书第二版)》,但更偏重于实用,所以晦涩偏理论的内容未整理,请见谅。另外本人能力有限,如有问题,恳请指正!基本数据结构包括:栈、队列、链表、有根树。
黑夜0411
·
2020-06-29 11:01
用KNN(K近邻算法)完成手写数字识别
python实践
用KNN(K近邻算法)完成手写数字识别PYTHON这是我第一次写博客,也是刚学的KNN,写``的目的就是为了增强我对该算法的理解。有问题请大家给我指出,谢谢啦。一.算法部分1.客观理解:最简单最初级的分类器是将全部的训练数据所对应的类别都记录下来,当测试对象的属性和某个训练对象的属性完全匹配时,便可以对其进行分类。但是怎么可能所有测试对象都会找到与之完全匹配的训练对象呢,其次就是存在一个测试对象同
刘皮狠
·
2020-06-29 11:47
机器学习
插入排序
插入排序最近无聊在啃
算法导论
,里面的东西有点难懂,隔三差五就是一串英文。所以准备讲解一下里面的东西。第一个算法就是“插入排序”。
兄主的仙人掌
·
2020-06-29 09:43
《算法导论》讲解员
算法导论
学习笔记15_最短路径
最短路径1.单源最短路径1.1Bellman-Ford算法1.2有向无环图的单源最短路径1.3Dijkstra算法2.所有结点对的最短路径问题2.1Floyd-Warshall算法3.算法实现(C++)3.1Bellman-Ford算法3.2有向无环图的单源最短路径3.3Dijkstra算法3.4Floyd算法1.单源最短路径1.1Bellman-Ford算法Bellman-Ford算法解决一般情
WavenZ
·
2020-06-29 08:53
算法
算法导论
观后感一
此文章只作为自己看
算法导论
的一些理解和想法,希望自己能坚持下去。算法的在计算中的应用什么是算法?算法的作用?为什么要研究算法?对于算法我常有的想法是必然和数学相关,而且必定是高等数学之上的。
SHSF飚
·
2020-06-29 07:02
算法
《
算法导论
》第2章算法基础——代码实现(Python)
#插入排序(非降序)A=[5,2,4,6,1,3]j=1length=len(A)forjinrange(1,length):key=A[j]i=j-1whilei>-1andA[i]>key:A[i+1]=A[i]i=i-1A[i+1]=keyprint(A)#插入排序(非升序)A=[5,2,4,6,1,3]j=1length=len(A)forjinrange(1,length):key=A[
思郁念忆
·
2020-06-29 06:18
算法导论
算法
python
非CS专业计算机科学与技术学习路径
非CS专业计算机科学与技术学习路径个人观点,后期会根据学习情况更新一、书单
算法导论
计算机组成与设计——硬件/软件接口深入理解计算机系统计算机网络操作系统——精髓与设计原理操作系统原理操作系统设计与实现计算机系统结构
我鬼生
·
2020-06-29 04:30
Learning
Python与机器学习的必读五本书,你拥有了吗?
基于大数据的人工智能如今异常火爆Python作为最热门的编程语言之一是实现机器学习算法的首选语言Python与机器学习这一话题非常的宽广5本书虽很难覆盖全面,但仍值得细细研读NO.1《机器学习——
Python
金曜软件工程师
·
2020-06-29 03:41
python
python实践
5——爬取淘宝网“鱼尾裙”商品信息
相信学了python爬虫,很多人都想爬取一些数据量比较大的网站,淘宝网就是一个很好的目标,其数据量大,而且种类繁多,而且难度不是很大,很适合初级学者进行爬取。下面是整个爬取过程:第一步:构建访问的url#构建访问的urlgoods="鱼尾裙"page=10infoList=[]url='https://s.taobao.com/search'foriinrange(page):s_num=str(
秋无之地
·
2020-06-29 03:13
爬虫
爬虫
python
淘宝网
python实践
2——利用爬虫抓取豆瓣电影TOP250数据及存入数据到MySQL数据库
这次以豆瓣电影TOP250网为例编写一个爬虫程序,并将爬取到的数据(排名、电影名和电影海报网址)存入MySQL数据库中。下面是完整代码:Ps:在执行程序前,先在MySQL中创建一个数据库"pachong"。importpymysqlimportrequestsimportre#获取资源并下载defresp(listURL):#连接数据库conn=pymysql.connect(host='127.
秋无之地
·
2020-06-29 03:13
爬虫
python实践
6——多线程爬取《瓜子网》的广州二手车市场信息
由于多线程爬取数据比单线程的效率要高,尤其对于爬取数据量大的情况,效果更好,所以这次采用多线程进行爬取。下面是爬取过程:首先提到一点,给《瓜子网》发送请求的请求头headers中必须带上“cookie”,否则《瓜子网》检测到非正常访问从而拒绝用户访问。注意上面这一点就可以正常获取数据啦,具体代码和流程如下:importmathimportrefromconcurrent.futuresimport
秋无之地
·
2020-06-29 03:13
爬虫
python实践
4——利用爬虫爬取“拉钩网——深圳——python岗位信息”
之前爬取的网页都是采用“GET”方法,这次爬取“拉勾网”是采取了“POST”的方法。其中,"GET"和“POST”之间最大的区别就是:"GET"请求时,数据会直接显示在地址栏;“POST”请求时,数据在数据包(封装在请求体中,通常是js中),爬取难度相对大点。“拉勾网”恰好是需要“POST”请求才能获取信息。于是,就写了这次的程序,详情如下(GitHub地址:
[email protected]
:Qiuq
秋无之地
·
2020-06-29 03:13
爬虫
python实践
——《英雄联盟》英雄及皮肤图片的爬虫
刚学python不久,听别人说用python写爬虫可以爬取网站数据,于是在网上搜索了一些资料,无意中在知乎和论坛上看到一些大神分享的关于python爬虫的博文,觉得挺有趣,于是利用最近学的一些python知识自己也写一个,功夫不负有心人,终于给我写出了一个——《英雄联盟》英雄及皮肤图片的爬虫,下面给大家分享一下。一开始都是先去《英雄联盟》官网找到英雄及皮肤图片的网址:URL=r'http://lo
秋无之地
·
2020-06-29 03:12
爬虫
数据研发学习笔记09:关联规则挖掘及
Python实践
频繁项集的典型挖掘方法3.1逐层发现算法Apriori3.2无候选集发现算法FP-growth4关联规则的生成方法5关联规则的其他类型6关联规则的兴趣度的其他度量6.1Lift度量6.2cosine度量7
Python
Lynn Wen
·
2020-06-29 02:50
数据研发学习笔记
数据分析学习总结笔记
算法导论
(五):线性时间排序
麻省理工学院公开课:
算法导论
。B站地址,网易公开课也有对应的资源。https://www.bilibili.com/video/av1149902/?
LuLuX
·
2020-06-29 01:13
《
算法导论
》第十九章——斐波那契堆
虽然写这个博客主要目的是为了给我自己做一个思路记忆录,但是如果你恰好点了进来,那么先对你说一声欢迎。我并不是什么大触,只是一个菜菜的学生,如果您发现了什么错误或者您对于某些地方有更好的意见,非常欢迎您的斧正!可合并堆可合并堆是支持以下5种操作的一种数据结构,其中每个元素都有一个关键字:MakeHeap():创建和返回一个新的不含任何元素的堆Insert(H,x):将一个已填入关键字的元素x插入
巨萌新
·
2020-06-29 00:42
算法导论
斐波那契堆
良心写博
机器学习
Python实践
-第三部分-数据准备
数据预处理:根据数据本身特性,进行数据准备、数据转换,数据输出#!/user/bin/python#-*-coding:UTF-8-*-frompandasimportread_csv#使用Pandas导入CSV数据fromnumpyimportset_printoptionsfromsklearn.preprocessingimportMinMaxScaler#导入数据filename='pim
weixin_38174032
·
2020-06-28 20:47
机器学习
上一页
33
34
35
36
37
38
39
40
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他