【数据结构与算法】刷题汇总 Python 版

我的BLOG里写了一部分算法和数据结构,题目都是从网上和书上找的。当然一下这些并不全面,我打算利用今后的时间把各类的算法题都用Python写一遍(因为我主要是用Python),尽可能囊括所有的算法题。写这些题并不是目的,主要还是为了能够提升自己的数据结构和算法的水平,以及码代码的速度和熟练度。所有...

2017-12-11 17:45:02

阅读数 13944

评论数 1

【机器学习】K近邻算法 - 性能分析

Knn算法是一种简单的监督学习算法,虽然性能并不算非常出色,但是可解释性非常强。理论上可以证明,Knn可以以任意精度拟合真实分类高维曲面。   一、Knn算法分析 1、该算法在处理样本分布不均匀的时候效果比较差。比如正类的样本数量为1000,反类的样本数量为100,即正反两类的比例悬殊,当测...

2018-01-11 23:04:48

阅读数 318

评论数 0

【机器学习】K均值算法 - 性能分析

K均值算法是最基础的一种聚类算法。具体算法描述就不提了,资料实在太多,这里说一下它的特点和局限性。   一、K均值的特点 1、容易陷入局部最小值 之所以陷入局部最小值,是因为初始值设置的有问题,即初始的K个base点在属性空间中的位置直接影响了最终的聚类结果。所以可以随机多次进行K均值聚类...

2018-01-11 23:00:41

阅读数 259

评论数 0

【机器学习】支持向量机SVM - 对SVM与核函数的理解及sklearn参数详解

支持向量机是在深度学习流行开来之前,性能表现最好的一种机器学习方法。在看这篇blog之前,默认读者已经有了对支持向量机的基本概念的认识。 一、支持向量机的进一步理解 支持向量机的优化目标在逻辑回归优化目标基础上进一步产生的。具体优化目标不说了,参看各种svm的书籍和博客。   1、...

2018-01-11 22:28:22

阅读数 6185

评论数 2

【机器学习】线性回归模型分析

具体原理不讲了,线性回归模型,代价损失函数 COST是均方误差,梯度下降方法。 属性取值。模型的属性取值设置需要根据每一个参数的取值范围来确定,将所有的属性的取值统一正则化normalization,统一规定在0~1的范围,或者-1~1的范围内,这样在进行线性回归时不会造成额外的回归开销。另外,...

2018-01-04 16:31:33

阅读数 300

评论数 0

【算法】汉诺塔 Python 版

题目: 汉诺塔给出最优解,如果对汉诺塔的定义有不了解,请翻看数据结构教材。分析: 算法当然还是递归解了,即把n个汉诺塔盘子分解成 n - 1 个盘子的移动和一个底层盘子的移动,这样一来,问题就成了一连串的递归,然后就可以逐步求解了。 当然了,汉诺塔还有进阶问题,此处先不讨论,随后补上吧。代码...

2018-01-03 22:39:48

阅读数 601

评论数 0

【算法】斐波那契数列的计算方法

题目: 计算斐波那契数列。具体什么是斐波那契数列,那就是0,1,1,2,3,5,8,13,21,34,55,89,144,233。要求: 时间复杂度尽可能少分析: 给出了三种方法: 方法1:递归的方法,在这里空间复杂度非常大。如果递归层数非常多的话,在python里需要调整解释器默认的递归深...

2018-01-03 19:14:20

阅读数 1996

评论数 0

Python不常见特性

之所以总结这些不常见的特性,原因主要有以下: 1、python码农写代码的时候本身有些问题的确面对的比较少,一旦遇到这些问题就需要百度。 2、百度的时候也是参考别人的blog,毕竟是中国人,直接去看官网文档的还是少。一般别人的 中文blog 里给出的解决方法也是比较低效的,不够python,代...

2017-12-31 22:59:12

阅读数 121

评论数 0

【操作系统】OS接口

操作系统接口一、用户接口用户接口不多谈了,整天就在和接口打交道。linux中的shell既是一种程序设计语言,又是一种命令解释器程序,又是一种命令语言。我有shell编程的书,但是一页都没翻过。只会shell命令,不懂shell编程。二、程序接口即系统调用,操作系统提供给应用程序使用的。系统调用分...

2017-12-25 22:36:04

阅读数 277

评论数 0

【操作系统】存储器管理 知识要点

存储器的结构已经在计算机系统组成中说过了。此处不表。包括哪几部分:寄存器、高速缓存、内存、外存缓存、外存、光盘软盘等。一、程序的上机过程程序在处理机上运行,前提是把程序放到处理机上,让处理机知道。这个处理包括:编译(产生目标模块Object Mudule),链接(Linker和库函数文件链接在一起...

2017-12-25 22:33:03

阅读数 179

评论数 0

构造一个特殊栈,实现方法getmin,返回栈中的最小元素 Python版

题目: 构造一个栈结构,其中需要实现一个方法,该方法 getmin,返回栈中的最小的元素。要求: 时间复杂度为o(1)。分析: 之前我写过了用python写一个栈数据结构,代码在这里: 队列和栈的Python实现在这里,需要以时间复杂度 o(1)完成查找,也就是说,必须以空间换时间。因此,...

2017-12-22 23:22:13

阅读数 394

评论数 0

从整数数组中找出唯二奇数次的数字 Python版

题目: 给定一个数组,数据都是整数,其中只有2个数字出现了奇数次,其它都是偶数次。找出那2个奇数次的数字。要求: 时间复杂度o(n),空间复杂度为o(1)。分析: 如果有两个数字出现了奇数次,比如是 a 和 b,则最终 odd 结果为 a^b,但其中一定有差别。因为数字不一样,所以其异或结果...

2017-12-22 23:16:20

阅读数 295

评论数 0

从数组中找出出现奇数次的那个数 Python版

题目: 给定一个数组,数据都是整数,其中只有一个数字出现了奇数次,其它都是偶数次。找出那个奇数次的数字。要求: 时间复杂度o(n),空间复杂度为o(1)。分析: 如果按照常规思路,那么这个题真的比较难操作,至少空间复杂度较高。但是采用位运算,异或即可轻松解决。 整数 n 与 0 的异或结果...

2017-12-22 23:10:51

阅读数 1629

评论数 0

统计整数的二进制表达里有多少个1 Python版

题目: 给定一个整数,统计其二进制表示里有多少个1。分析: 方法1:循环迭代该数的二进制的每一位,复杂度是 o(log2 n),n就是该整数 方法2:复杂度仅仅是1的个数。方法是采用位运算抹去0不需要处理。这里的位运算表达式不光在这里见到,其它地方的用处也非常多。再者,计算机组成原理里有详细...

2017-12-22 23:07:14

阅读数 1884

评论数 0

不用额外变量交换两个整数值 Python版

题目如标题所述。分析:采用位运算,这样的代码指令和利用临时变量一样多,但是位运算明显比赋值略微复杂一点点。毕竟赋值不需要经过计算。代码: def exchage_nums(a, b): ''' 不用额外变量交换两个整数值,空间节省了,时间负责度略高一些...

2017-12-22 23:01:01

阅读数 365

评论数 0

【操作系统】进程和线程

进程是操作系统中最核心的概念,因为它代表了操作系统最根本的价值,即多个程序的并发,以及人机交互处理,像其它的文件管理、io管理、存储器管理等,都是在处理机管理基础上发展而来的。一、进程基本概念操作系统的主要作用就是为了实现并发,但是如果对并发的程序没有任何监督和管理,并发容易造成间断程序、程序失去...

2017-12-22 22:58:01

阅读数 131

评论数 0

【操作系统】概述

这篇主要是综述总结一下操作系统的基本概念,了解操作系统OS到底在做哪些工作。之所以写这一篇blog,主要是因为我长期以来都没有搞懂OS到底在做些什么工作。毕竟从接触计算机开始,就在使用windows系统,进程啊,线程啊这些东西我一直以为是理所当然的;另一方面,操作系统毕竟是非常抽象的,在我学完单片...

2017-12-22 22:19:43

阅读数 180

评论数 0

【算法】大数据与空间限制

这篇blog 没有代码,主要是总结了一下处理大数据和有限内存情况下的一般解题思路。很多的代码面试题都给出了数十亿的数据量,或整数,或字符串,再给出1G甚至小到10M的内存空间,让在苛刻条件下完成搜索和遍历,并输出某些结果。这样的问题叫做大数据和空间限制问题。此类问题一般都没有时间限制,因为时间和空...

2017-12-22 21:39:21

阅读数 193

评论数 0

【机器学习】决策树 总结

具体的细节概念就不提了,这篇blog主要是用来总结一下决策树的要点和注意事项,以及应用一些决策树代码的。一、决策树的优点: 易于理解和解释。数可以可视化。也就是说决策树属于白盒模型,如果一个情况被观察到,使用逻辑判断容易表示这种规则。相反,如果是黑盒模型(例如人工神经网络),结果会非常难解释。 几...

2017-12-15 00:15:03

阅读数 4440

评论数 0

【数据库】SQL常用命令语法 初级篇

由于SQL学习的时候我是采用了MySQL,所以这里我就按照MySQL里的语法命令来操作,其它也差不多。这里主要是初级的语法语句,最关键的就是查询语句。还有其它的没有涉及,包括存储过程、触发器、事件、过程编程、MySQL和Oracle等的比较。一、MySQL登录退出mysql -uroot -V -...

2017-12-14 19:32:26

阅读数 535

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭