自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (1)
  • 收藏
  • 关注

原创 C++语言特性总结(一)

1、const的作用1、修饰变量:类似于#define宏定义,但可以指定类型2、修饰指针:指针常量,顶层const,指针不可变(int *const)*在const之前 指向常量的指针,底层const3、修饰引用:指向常量的应用,指向形参类型,既避免了拷贝,又避免了函数对值的修改4、修饰成员函数:函数声明后不可更改,修饰返回的指针或引用,或传入的参数为const并不能修改##被 const 修饰(在 const 后面)的值不可改变/...

2020-05-25 17:16:26 624

原创 Python语言特性及注意(一)

1、函数参数传递#变量是内存中类型的引用,类型是属于对象的,不属于变量,可变对象有list,dict,set#不可变对象有string,tuble,numbers#当引用传递给函数的时候,函数会自动复制引用,example.1中引用指向不可变对象,所以a的地址和数值没有改变#example.2中引入可变对象后,指向地址和数值都会改变,所以print(2)a=1def fun(a): print ("func_in",id(a)) a=2 print ("fun

2020-05-18 09:37:22 420

原创 机器学习专题

1、KNN之k近邻python版本实现:np.argsort函数返回的是数组值从小到大的索引值One dimensional array:一维数组>>> x = np.array([3, 1, 2])>>> np.argsort(x)array([1, 2, 0])import numpy as npdef c...

2020-04-23 12:23:58 703

原创 机器学习(二)

1、xgboost为啥用二阶泰勒展开利用泰勒公式去逼近任何函数,在GBDT一阶导数的基础上引入二阶导更加精确同时在二阶导的基础上可以转化为关于叶子结点权重的一元二次方程,在顺序扫描计算增益损失时更加精准,因为本身二阶导在推导过程中可以更精确的反应梯度是如何变化的,从而更精确的实现loss下降同时因为xgboost的损失函数是基于MSE的,这样有更好的扩展性,任何可以进行二阶泰勒展开的都可以自定义其损失函数,既可分类也可回归。2、过拟合的解决方案重新清洗样本,增加样本数量进行样本集扩充,最简单

2020-08-19 11:40:02 2286

原创 C++语言特性总结(二)

1、堆栈类模板实现:#ifndef MYSTACK_H#define MYSTACK_H#include <iostream>using namespace std; template <typename T>class MyStack{public: MyStack(int size); ~MyStack(); bool stackEmpty();//判空 bool stackFull();//判满 void clearStack();//清空 i

2020-07-18 22:16:04 148

原创 数据库常见知识点

1、关系型数据库和非关系型数据库2、事务的一般特点(ACID)事务(txn)是一系列在共享数据库上执行的行为,以达到更高层次更复杂逻辑的功能。事务是DBMS中最基础的单位,事务不可分割。ACID,是指在可靠数据库管理系统(DBMS)中,事务(transaction)所应该具有的四个特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。原子性是指事务是一个不可再分割的工作单位,事务中的操作要么都发生,要么都.

2020-07-12 19:23:40 172

原创 常见面试题总结2020秋招

1、LRU缓存机制哈希表+双向链表,保证可以随时在头结点和尾节点进行数据插删除,同时记得更新dict哈希表中存储的key值最新使用的程序插在双向链表的头部。class DLinkedNode: """ 双链表节点 """ def __init__(self, key: int = 0, value: int = 0): self.prev = None self.next = None self.key = key

2020-07-12 16:28:27 966

原创 sklearn机器学习库学习笔记

1.1广义线性模型普通最小二乘法from sklearn import linear_modelreg = linear_model.LinearRegression()reg.fit([[0,0],[1,1],[2,2]],[0,1,2])reg.coef_和reg.intercept_中会保存权重参数和初始化参数类型岭回归,对系数大小增加惩罚项,最小化带惩罚项的残差平方和>>> from sklearn import linear_model>&gt

2020-05-29 21:17:23 287

原创 Saprk Core (一)

RDD的stage划分时依据宽窄依赖划分的,窄依赖是一对一,相当于独生子女,宽依赖是一对多,相当于多个子女,宽依赖时会划分到不同stage中去,一直递归的寻找父RDDRDD相关的持久化和缓存是Spark最重要的特征之一,缓存是Spark构建迭代式算法和快速交互式查询的关键。RDD通过persist方法或者cache方法将前面的计算结果缓存,只有在后面触发action时会被缓存在计算节点的内存中,并供后面重用其中不同参数可以指定不同的存储机制,MEMORY_AND_DISK先存储到...

2020-05-23 15:19:41 125

原创 数据分析之概率问题

1、有一苹果,两个人抛硬币来决定谁吃这个苹果,先抛到正面者吃。问先抛的人先吃到苹果的概率是多少?设先抛的人吃到的概率为p1,后抛的人吃到苹果的概率为p2,其中p1+p2=1,但是p2只有在p1没有吃到苹果的条件下p2才能吃到,即他们之间的关系是p2=1/2 * p1,因为p2的样本空间少了一半,所以解得p1 = 1/32、一条长度为l的线段,随机在其上选2个点,将线段分为3段,问这3个子段能组成一个三角形的概率是多少?3、一副扑克牌54张,现分成3等份每份18张,问大小王出现在同一份中的概率

2020-05-19 22:52:56 1301

原创 华为机试题目汇总

1、字符串最后一个单词的长度计算字符串最后一个单词的长度,单词以空格隔开。输入描述:一行字符串,非空,长度小于5000。输出描述:整数N,最后一个单词的长度。a=input().split(" ")print(len(a[-1]))2、计算字符个数写出一个程序,接受一个由字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。输入描述:第一行输入一个有字母和数字以及空格组成的字符串,第二行输入一个字符。输出描述:输出输入

2020-05-13 18:12:24 2413

原创 程序规范化输入

HDFS应用开发:MapReduce的程序实现:

2020-05-10 10:24:13 298

原创 碎碎念之平时笔记

1、二分查找树BST,左子树都比根节点要小,右子树都比根节点要大但是在极端情况下会退化成链表,所以引入AVL树,平衡二叉树,利用左旋右旋来满足树的高度相差不超过1,但是插入性能和查找性能都不高。因此牺牲一部分插入性能,引入红黑树,最短子树与最长子树的高度差不超过2倍,通过旋转和变色完成、其中插入的一定是红色节点。不能有两个红色节点相邻,同样长路径中的黑色节点数目相同,根节点和叶节点插是黑的...

2020-05-06 12:14:00 127

转载 Linux基础入门套接字(二)

一、I/O 模型 阻塞式 I/O 非阻塞式 I/O I/O 复用 信号驱动 I/O 异步 I/O 五大 I/O 模型比较 二、I/O 复用 select poll 比较 epoll 工作模式 应用场景 参考资料 https://github.com/CyC2018/CS-Notes/blob/master/notes/Socket.md一...

2020-05-04 16:39:59 153

原创 Linux基础入门

Linux文件系统(目录和文件)Windows下有盘符Linux没有盘符的概念,只有一个根目录不同的目录有哪些作用:/home/用户名 存储一些用户相关的文档/usr 安装的应用程序Linux各个目录以及每个目录的作用介绍:http://www.cnblogs.com/duanji/p/yueding2.html视频链接:https://www.bilibili.com/video...

2020-05-04 16:27:17 326

原创 剑指offer---其他记录

56. 从1到n整数中1出现的次数输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数。例如输入12,从1到12这些整数中包含“1”的数字有1,10,11和12,其中“1”一共出现了5次。样例输入: 12输出: 5从1到abcdef,c位1的个数sum分为2部分:sum += abc * 1000if c > 1: sum += 1000; if ...

2020-05-01 12:14:52 207

原创 NLP概念基础入门

1、说一下隐马尔可夫类型和条件随机场在序列标注中的应用 在隐马尔可夫类型中(HMM)定义了观测序列、状态序列、以及观测概率矩阵和状态转移矩阵。这三个要素也构成了隐马尔可夫类型的三要素,包括他的初始状态,转移矩阵,和观测矩阵。在隐马尔可夫类型中主要有三个问题,首先第1个是概率计算问题已知模型参数和观测序列求在某时刻的输出概率, 第2个是去利用EM算法去预估测模型中的参数, 第3个问题是...

2020-04-30 18:07:56 244

原创 2020实习笔试面试题汇总

20200425 网易雷火数据挖掘1、进程、线程与协程之间的联系2、多层装饰器嵌套3、广告推荐系统包括哪些,需要什么日志,如何计算转化数4、编程1编程2:给定一组非负整数组成的数组h,代表一组柱状图的高度,其中每个柱子的宽度都为1。 在这组柱状图中找到能组成的最大矩形的面积(如图所示)。 入参h为一个整型数组,代表每个柱子的高度,返回面积的值。//巧妙地...

2020-04-25 15:11:49 243

原创 计算机网络面试高频问题

目录 1、请详细介绍下TCP的三次握手机制,为什么要三次握手? 1.1 为什么要有握手? 1.2 为什么是三次?2、简单介绍下HTTP协议中缓存的处理流程?2.1 缓存的应用流程是什么?2.2 与缓存相关的HTTP头部有哪些?3、在地址栏键入URL后,网络世界发生么什么?4、使用HTTP长连接有哪些优点?5、CLOSE_WAI...

2020-04-22 17:19:52 836 1

原创 面试系列之排序必会

1、冒泡排序def bubble(alist): for j in range(len(alist)-1,0,-1): flag = False for i in range(j): #一趟排序 if alist[i]>alist[i+1]: alist[i],alist[i+1] = al...

2020-04-20 10:03:58 154

原创 剑指offer面试---数组高频系列(建议必会)

1、和为S的两个数字输入一个数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,输出任意一对即可。你可以认为每组输入中都至少含有一组满足条件的输出。样例输入:[1,2,3,4] , sum=7输出:[3,4]class Solution(object): def findNumbersWithSum(self, num...

2020-04-19 14:31:09 178

原创 算法学习之路

一、单调队列1、滑动窗口的最大值给定一个数组和滑动窗口的大小,请找出所有滑动窗口里的最大值。例如,如果输入数组[2, 3, 4, 2, 6, 2, 5, 1]及滑动窗口的大小3,那么一共存在6个滑动窗口,它们的最大值分别为[4, 4, 6, 6, 6, 5]。注意:数据保证k大于0,且k小于等于数组长度。样例输入:[2, 3, 4, 2, 6, 2, 5, 1] , k...

2020-04-18 00:05:15 311

原创 剑指offer面试---二叉树系列

1、验证二叉搜索树给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例1:输入: 2 / \ 1 3输出: trueclass Solution: def isValidBST(self, ...

2020-04-16 20:02:27 242

原创 剑指offer面试---链表系列

给定一个长度为nn的整数数组nums,数组中所有的数字都在0∼n−10∼n−1的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。注意:如果某些数字不在0∼n−10∼n−1的范围内,或数组中不包含重复数字,则返回 -1;样例给定 nums = [2, 3, 5, 4, 3, 2, 6, 7]。...

2020-04-16 10:18:32 158

原创 top k高频面试题+赛马问题

前几天面试被问到这两个问题,真尴尬,都没怎么答对,今天就让我们来分析一下这个问题top k大和top k高频问题,因为在求前k小的数时可能会有重复,因此我们可以利用hash表或字典来去重。同样适用与Top K 问题接下来要从海量数据中找最小的K个数,建议分为3个方面来回答问题1)数据无法全部加载到内存中 2)数据可以全部加载 3)分布式数据处理对于数据无法全部加载时,我们可以维护最...

2020-04-15 18:52:55 415

原创 leetcode 1143. 最长公共子序列 面试题

给定两个字符串text1 和text2,返回这两个字符串的最长公共子序列。一个字符串的子序列是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,"ace" 是 "abcde" 的子序列,但 "aec" 不是 "abcde" 的子序列。两个字符串的「公共子序列」是这两个字符串所共同拥有的子序列。若这两个字符...

2020-04-15 17:49:17 153

原创 动态规划之买卖股票问题

买卖股票问题比较多,基本问题类型如下:随着k取值的不同,以及手续费,冷冻期的问题,可能会有许多变形,我将其总结为贪心算法和动态规划,当k=1或k无限制时,即只能买卖一次或者无限制时,可以用贪心算法。1、给定一个数组,它的第i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。class...

2020-04-15 13:06:43 402

原创 435.Leetcode 贪心算法之区间调度问题

给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。注意:可以认为区间的终点总是大于它的起点。区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。示例 1:输入: [ [1,2], [2,3], [3,4], [1,3] ]输出: 1解释: 移除 [1,3] 后,剩下的区间没有重叠。class Solution: def era...

2020-04-15 10:20:14 495

原创 动态规划之博弈问题

你和你的朋友⾯前有⼀排⽯头堆, ⽤⼀个数组 piles 表⽰, piles[i] 表⽰第 i堆⽯⼦有多少个。 你们轮流拿⽯头, ⼀次拿⼀堆, 但是只能拿⾛最左边或者最右边的⽯头堆。 所有⽯头被拿完后, 谁拥有的⽯头多, 谁获胜。⽯头的堆数可以是任意正整数, ⽯头的总数也可以是任意正整数, 这样就能打破先⼿必胜的局⾯了。 ⽐如有三堆⽯头 piles = [1, 100, 3] , 先⼿不管拿 ...

2020-04-15 09:48:38 140

原创 72. 编辑距离腾讯面试题

给你两个单词word1 和word2,请你计算出将word1转换成word2 所使用的最少操作数。你可以对一个单词进行如下三种操作:插入一个字符删除一个字符替换一个字符示例1:输入:word1 = "horse", word2 = "ros"输出:3解释:horse -> rorse (将 'h' 替换为 'r')rorse -> rose...

2020-04-14 17:48:01 82

原创 Leetcode 300. 最长上升子序列python版本

给定一个无序的整数数组,找到其中最长上升子序列的长度。示例:输入: [10,9,2,5,3,7,101,18]输出: 4解释: 最长的上升子序列是[2,3,7,101],它的长度是 4。说明:可能会有多种最长上升子序列的组合,你只需要输出对应的长度即可。你算法的时间复杂度应该为O(n2) 。class Solution: def lengthOfLIS(se...

2020-04-14 16:28:48 102

原创 变位词组

面试题 10.02. 变位词组编写一种方法,对字符串数组进行排序,将所有变位词组合在一起。变位词是指字母相同,但排列不同的字符串。注意:本题相对原题稍作修改示例:输入: ["eat", "tea", "tan", "ate", "nat", "bat"],输出:[ ["ate","eat","tea"], ["nat","tan"], ["bat"]]说明:...

2020-04-10 18:42:34 225

原创 剑指offer-49 二叉树与双向链表

题目描述输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。注意:需要返回双向链表最左侧的节点。例如,输入下图中左边的二叉搜索树,则输出右边的排序双向链表。算法1题目要求将二叉搜索树转换为有序双向链表则采用中序遍历的方式就是输出的有序排列整棵树采用递归的方式遍历,从根节点开始返回左子树的最左边结点,对应链表中根...

2019-11-28 10:32:07 66

基于stm32的上位机与下位机的通信

基于stm32的嵌入式开发程序,可用于数据读取存储,同时上位机与下位机的通信,可以修改通信协议,关于停止位,奇偶校验位等均可通过程序设置

2018-05-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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