自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 python基础 pandas

只记录一些学习过程中需要注意的部分。

2024-01-10 17:34:17 337

原创 python基础 numpy

使用 np.ones()、np.zeros() 等方法,括号里放的是数组的维度。二维数组时,a.max(axis=0)是指按第某个维度中寻找对应的某个值。np.array([1,2,3]),括号里直接往数组里塞数。相乘都是按位相乘,如果要进行矩阵乘法,使用a.dot(b)第一维上的维度数一样就可以运算,维度小的会自动补充。数组的加、减、乘、除都是在对应的位置进行运算。a.max()、a.sum()等。a.reshape()自定义。一维、二维、多维都可以。

2024-01-10 16:20:18 351

原创 百面机器学习 无监督学习

基本思想:通过迭代方式寻找K个簇的一种划分方案,使得聚类结果对应的代价函数最小。核心目标:是将给定的数据集划分成K个簇,并给出每个数据对应的簇中心点。1、受初值和离群点的影响每次的结果不稳定2、结果通常不是全局最优而是局部最优解3、无法很好地解决数据簇分布差别比较大的情况4、不太适用于离散分类等1、对于大数据集,K均值聚类算法相对是可伸缩和高效的2、它的计算复杂度是O(NKt)接近于线性,其中N是数据对象的数目,K是聚类的簇数,t是迭代的轮数。

2024-01-09 10:27:33 354

原创 百面机器学习 降维

在信号处理领域,认为信号具有较大方差,噪声具有较小方差。信号与噪声之比。信噪比越大意味着数据的质量越好,反之,信噪比越小意味着数据的质量越差。在降维过程中,最大化投影方差,也就是让数据在主轴上投影的方差最大。即要找到最大的方差也就是协方差矩阵最大的特征值,最佳投影方向 就是最大特征值所对应的特征向量。(1)对样本数据进行中心化处理。(2)求样本协方差矩阵。(3)对协方差矩阵进行特征值分解,将特征值从大到小排列。

2024-01-03 16:55:42 316 1

原创 百面机器学习 机器学习经典算法

SVM的核心思想是找到一个决策边界(即超平面),它能够将不同类别的数据分开,并确保边界两侧的最近点(支持向量)之间的距离(即边距)最大。:这些是距离决策边界最近的数据点,对确定边界的位置至关重要。:在二维空间中,这个决策边界是一条线;在更高维度中,它是一个超平面。凸优化理论中的:对于不相交的两个凸集,存在一个超平面,将两个凸集分离。对于二维的情况,就是一个将它们分离的超平面。通过将数据映射到更高维空间来寻找超平面,使得原本在原始空间中不可分的数据变得可分。

2024-01-02 17:19:45 1013

原创 百面机器学习 特征工程+模型评估

特征工程:是对进行一系列工程处理,将其,作为输入供算法和模型使用。

2023-12-29 14:48:26 401 1

原创 day04(链表)+ day06(哈希表)-py

今日内容:24. 两两交换链表中的节点、 19.删除链表的倒数第N个节点、 面试题 02.07. 链表相交、 142.环形链表II、454.四数相加II、 383. 赎金信、 15. 三数之和、 18. 四数之和。题意:三数之和,给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0?为了表示给定链表中的环,使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。先按大小排序,然后设置一个移动的索引,以及后续的快慢指针。

2023-12-11 16:06:24 360 1

原创 day22(二叉树)-py

题意:给定一个二叉搜索树的根节点 root 和一个值 key,删除二叉搜索树中的 key 对应的节点,并保证二叉搜索树的性质不变。返回二叉搜索树(有可能被更新)的根节点的引用。题意:给定二叉搜索树(BST)的根节点和要插入树中的值,将值插入二叉搜索树。思路:这道题的核心思路是:找到了key值所在节点的左子树和右子树后,根据搜素二叉树的性质,只需要把左子树变为右子树的最左叶子节点的左子树即可。235. 二叉搜索树的最近公共祖先、 701.二叉搜索树中的插入操作、 450.删除二叉搜索树中的节点。

2023-12-04 16:21:13 316 1

原创 day20(二叉树)-py

530.二叉搜索树的最小绝对差、 501.二叉搜索树中的众数、 236. 二叉树的最近公共祖先。

2023-12-02 21:32:42 387 1

原创 day08 (字符串)-py

今日任务:344.反转字符串、 541. 反转字符串II、 卡码网:54.替换数字比较简单的,就随便写点吧。

2023-12-01 22:19:22 294 1

原创 day19(二叉树)-py

1、“有一个节点为空就返回另一个,另一个为空就返回None”,这样可以比直接创建一个val=“0”节点节省空间,细品,真的很细。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。思路:首先要知道二叉搜索树是啥,这是一个有点坑的地方,因为不光是要比较左右节点的val,而是比较整个左右子树中节点的val。参考代码有点妙:把整个二叉树转化为中序遍历的数组,然后根据它的结构就会惊喜的发现,woc!题意:给定一个不含重复元素的整数数组。

2023-12-01 21:23:09 361 1

原创 day18(二叉树)-py

思路:其实两题差不多,一个是判断是否有目标和路径,输出为bool型;那思路很清晰,就是:有左右节点就继续递归,如果是叶子节点就判断是够等于目标值,对应输出bool型。题意1:给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。题意2:给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。第四步:切割中序数组,切成中序左数组和中序右数组 (顺序别搞反了,一定是先切中序数组)题意:给定一个二叉树,在树的最后一行找到最左边的值。

2023-11-30 20:32:58 347

原创 day17(二叉树)-py

思路:主要是先理解题意,然后对题意进行拆分:主要实现两个功能,一个是得到左右子树的深度(输出为int),一个是根据深度判断深度是否相差1(输出为bool)。很好那就是写两个函数,一个实现深度输出,一个对二叉树进行遍历并判断是否平衡。在队列的基础上,因为有的根节点会重复利用,所以意味着不是一次性的,而叶子节点进出一次队列后就用不到了,这个时候就有一个回溯的思想。很关键,需要理解理解!就是拆分题意,后得出先判断是否是左叶子,如果是就加上val值,然后遍历。题意:给定一个二叉树,判断它是否是高度平衡的二叉树。

2023-11-29 16:23:42 340

原创 day16 (二叉树)-py

今日内容:104.二叉树的最大深度 (优先掌握递归)、111.二叉树的最小深度 (优先掌握递归)、222.完全二叉树的节点个数(优先掌握递归)唯一不同的是在算深度这种计数的情况下,return的值为1+后续的值。我宣布今天是刷题以来最简单的一次,五分钟一道题,嘿嘿嘿。题意:给定一个二叉树,找出其最小深度。,求出该树的节点个数。小偷个懒、直接方代码。题意:给定一个二叉树。

2023-11-28 14:56:39 327

原创 day03(链表)-py

今日任务:链表理论基础、 203.移除链表元素、 707.设计链表、 206.反转链表。

2023-11-28 10:44:44 314

原创 day15(二叉树)-py

就是要实现每层的从上到下,从左到右的读取。梳理一下逻辑,其实就是先按顺序遍历每一层,然后遍历每一个根节点的左右节点,以此类推到下一层。那么在这个读完一层再读下一层的思路中就可以用到队列:先进一层,然后将其弹出并将其对应的左右节点push入。给你一个二叉树,请你返回其按 层序遍历 得到的节点值。再次递归三步走:需要判断是否为空、需要判断哪些情况就不对称、然后就对比左右节点。妥妥的递归,和递归遍历的思路一样,就是需要交换左右节点。递归三步走:需要判断是否为空、交换左右节点、实现递归顺序。

2023-11-27 20:44:10 401

原创 day13(二叉树)-py

理论基础:递归遍历、迭代遍历、统一迭代由于一刷,故只刷了递归。

2023-11-25 21:50:03 306

原创 day12(栈与队列)-py

push(value):如果push的元素value大于入口元素的数值,那么就将队列入口的元素弹出,直到push元素的数值小于等于队列入口元素的数值为止。若头部为最大,且下一轮要移除,则需要弹出,即将队列中的头部和当前循环索引位置比较。pop(value):如果窗口移除的元素value等于单调队列的出口元素,那么队列弹出元素,否则不用任何操作。1.构造一个单调队列,来存储滑动窗口的元素,也就是说需要对滑动窗口中元素的大小进行排序。开始直接用暴力遍历的方法可以做,但发现复杂度过高,于是需要借助队列。

2023-11-24 21:52:23 311

原创 day11(栈与队列)-py

今日内容: 栈与队列part02、20. 有效的括号、1047. 删除字符串中的所有相邻重复项、150. 逆波兰表达式求值代码随想录:代码随想录主要是些队和栈的应用,还行吧,凭借我仅剩的数据结构知识完成。时间复杂度和空间复杂度还没分析,前几天先消化题目找找感觉吧。给定一个只包括 ,,,,, 的字符串 ,判断字符串是否有效。有效字符串需满足:思路:三题里这题卡了最久,写了一坨屎山代码,结果就是有几个case错,查了半天发现题目理解错了,([)] 这样互相套是不对的。看了答案就清晰了,就是要先把几个不同的情况

2023-11-23 21:30:18 801

原创 day10(栈与队列)-py

今日内容: 栈与队列理论基础、用栈实现队列、用队列实现栈菜菜刷题第一天,为了赶上大部队进度从day10开始。

2023-11-22 20:43:59 24

空空如也

空空如也

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

TA关注的人

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