<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[LRY89757的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/LRY89757</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; LRY89757]]></copyright><item><title><![CDATA[算法刷题全记录]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/119397123</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/119397123</guid><author>LRY89757</author><pubDate>Thu, 05 Aug 2021 00:39:32 +0800</pubDate><description><![CDATA[学校要求暑假刷算法题，上个寒假刷的题（有好多好多都是不会抄的）几乎上都快忘完了，正逢上我创建个人博客，算是把刷过的题都做一个记录，也算是个记录整理一下思路，以后忘了还可以看看当时的思路
就以这一个系列作为开篇作，以后我会每次刷一个系列的题，顺便来进行一个大的每道题的总结。
第一个系列的是关于栈的五道题。

难度不是很大，不过也花了一定的时间
五道题地址与解答博客地址在这里：
第一道：P1044单调栈       算法刷题之栈系列P1044栈
第二道：P1449后缀表达式  算法刷题之栈系列P1449后缀表达]]></description><category></category></item><item><title><![CDATA[算法刷题之栈系列P1981-表达式求值]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/119396974</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/119396974</guid><author>LRY89757</author><pubDate>Thu, 05 Aug 2021 00:35:07 +0800</pubDate><description><![CDATA[题目描述

题目描述：给定一个只包含加法和乘法的算术表达式，请你编程计算表达式的值。
优快云显示可能有问题，不允许外链转存，大家可以在我的博客中阅读：My Blog
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qkkpcshX-1628094889643)(https://z3.ax1x.com/2021/08/04/fEXFET.png)]
解析思路

实际上本题和栈的关系不是特别大，因为只有乘和加两种运算，我们基本思路为把乘的乘出来后，加上之前的和就OK，没有必要使用]]></description><category></category></item><item><title><![CDATA[算法刷题之栈系列P1449-后缀表达式]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/119396930</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/119396930</guid><author>LRY89757</author><pubDate>Thu, 05 Aug 2021 00:33:45 +0800</pubDate><description><![CDATA[题目描述

所谓后缀表达式是指这样的一个表达式：式中不再引用括号，运算符号放在两个运算对象之后，所有计算按运算符号出现的顺序，严格地由左而右新进行（不用考虑运算符的优先级）。
如：3*(5–2)+7对应的后缀表达式为：3．5．2．-*7．+@。’@’为表达式的结束符号。‘.’为操作数的结束符号。
优快云显示可能有问题，不允许外链转存，大家可以在我的博客中阅读：My Blog
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Tkmtd2dD-1628094780336)(htt]]></description><category></category></item><item><title><![CDATA[算法刷题之栈系列P5788-单调栈]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/119396853</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/119396853</guid><author>LRY89757</author><pubDate>Thu, 05 Aug 2021 00:31:57 +0800</pubDate><description><![CDATA[题目描述

给出项数为 n的整数数列 a1…na_{1 … n}a1…n​。
定义函数 f(i) 代表数列中第 ii 个元素之后第一个大于 a**i 的元素的下标，若不存在，则 f(i)=0。
试求出 f*(1…*n)。
优快云显示可能有问题，不允许外链转存，大家可以在我的博客中阅读：My Blog
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fkmvLtEX-1628094671699)(https://z3.ax1x.com/2021/08/05/fV9nYV.png]]></description><category></category></item><item><title><![CDATA[算法刷题之栈系列P1044-栈]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/119396820</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/119396820</guid><author>LRY89757</author><pubDate>Thu, 05 Aug 2021 00:30:46 +0800</pubDate><description><![CDATA[题目描述

一个序列1、2、3、4、5、……、n，按照如此顺序入栈，可能的出栈顺序有多少种？
优快云显示可能有问题，不允许外链转存，大家可以在我的博客中阅读：My Blog

思路解析

这一道题实际上使用了卡特兰数的公式，
建立数组f。f[i]表示i个数的全部可能性。
f[0] = 1, f[1] = 1; //当然只有一个
设 x 为当前出栈序列的最后一个，则x有n种取值
由于x是最后一个出栈的，所以可以将已经出栈的数分成两部分

比x小
比x大

比x小的数有x-1个，所以这些数的全部出栈可能为f[]]></description><category></category></item><item><title><![CDATA[算法刷题之栈系列P1165-日志分析]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/119396734</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/119396734</guid><author>LRY89757</author><pubDate>Thu, 05 Aug 2021 00:28:45 +0800</pubDate><description><![CDATA[题目描述:
M 海运公司最近要对旗下仓库的货物进出情况进行统计。目前他们所拥有的唯一记录就是一个记录集装箱进出情况的日志。该日志记录了两类操作：第一类操作为集装箱入库操作，以及该次入库的集装箱重量；第二类操作为集装箱的出库操作。这些记录都严格按时间顺序排列。集装箱入库和出库的规则为先进后出，即每次出库操作出库的集装箱为当前在仓库里所有集装箱中最晚入库的集装箱。
出于分析目的，分析人员在日志中随机插入了若干第三类操作――查询操作。分析日志时，每遇到一次查询操作，都要报告出当前仓库中最大集装箱的重量。
优快云]]></description><category></category></item><item><title><![CDATA[算法刷题之栈系列P1044-栈]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/119396689</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/119396689</guid><author>LRY89757</author><pubDate>Thu, 05 Aug 2021 00:27:31 +0800</pubDate><description><![CDATA[题目描述

一个序列1、2、3、4、5、……、n，按照如此顺序入栈，可能的出栈顺序有多少种？
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PRYGvGkp-1628094352754)(https://z3.ax1x.com/2021/08/04/fEbQh9.png)]
思路解析

这一道题实际上使用了卡特兰数的公式，
建立数组f。f[i]表示i个数的全部可能性。
f[0] = 1, f[1] = 1; //当然只有一个
设 x 为当前出栈序列的最后一个，则x有n种取值
]]></description><category></category></item><item><title><![CDATA[算法刷题全记录]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/119396513</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/119396513</guid><author>LRY89757</author><pubDate>Thu, 05 Aug 2021 00:22:36 +0800</pubDate><description><![CDATA[学校要求暑假刷算法题，上个寒假刷的题（有好多好多都是不会抄的）几乎上都快忘完了，正逢上我创建个人博客，算是把刷过的题都做一个记录，也算是个记录整理一下思路，以后忘了还可以看看当时的思路
就以这一个系列作为开篇作，以后我会每次刷一个系列的题，顺便来进行一个大的每道题的总结。
第一个系列的是关于栈的五道题。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AkMLipmG-1628094054102)(https://z3.ax1x.com/2021/08/04/fEHUWn.pn]]></description><category></category></item><item><title><![CDATA[numpy中argsort 函数的详解]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/118567733</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/118567733</guid><author>LRY89757</author><pubDate>Fri, 09 Jul 2021 15:02:54 +0800</pubDate><description><![CDATA[argsort函数经常用于矩阵的一些不破坏原有数组的情况下得到原数组的有序序列的情况。
官网解释

使用 kind 关键字指定的算法沿给定轴执行间接排序。它以排序的顺序返回与给定轴上的索引数据具有相同形状的索引数组。
axisint 或 None，可选
排序的轴。默认值为 -1（最后一个轴）。如果没有，则使用扁平数组。
kind:{‘快速排序’、‘合并排序’、‘堆排序’、‘稳定’}，排序算法。默认值为“快速排序”。请注意，“stable”与“mergesort”都在幕后使用 timsort，通常，实际实现会]]></description><category></category></item><item><title><![CDATA[numpy中对于tile的理解]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/118584945</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/118584945</guid><author>LRY89757</author><pubDate>Fri, 09 Jul 2021 00:10:50 +0800</pubDate><description><![CDATA[近些天使用numpy的时候发现了这么一个函数tile，感觉这个函数比较有用，可以将减少循环，直接矩阵运算优化运算速度。博主认为很有必要认真讨论一下这个函数的功能。
官网解释
老传统，我们先看一下官网是怎么说的：

相当于是一个复制函数，扩充矩阵的规模值直至到我们满意的一个形状。"tile"在英文中作动词会有“铺”的意思，与extend是同义词。
通过提供的次数reps来决定重复A的次数来构造一个array。
如果reps的长度为d，那么给出结果的维度就是max(d, A.ndim).
如果 A.ndim &]]></description><category></category></item><item><title><![CDATA[numpy中对于axis的理解]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/118570303</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/118570303</guid><author>LRY89757</author><pubDate>Thu, 08 Jul 2021 11:37:35 +0800</pubDate><description><![CDATA[写在前面
我们知道axis这个东西经常出现在numpy的sum、argsort等一系列有关于数组的操作中，numpy中的轴axis是很重要的，许多numpy的操作根据axis的取值不同，作出的操作也不相同。可以说，axis让numpy的多维数组变的更加灵活，但也让numpy变得越发难以理解。因此，弄清楚axis的作用显得尤为重要。作为一个很基本同时很重要的概念，博主觉得很有必要详细深入了解一下这一名词。
下面把博主的一些发现分享给大家。
简单了解axis

axis 中文翻译指“轴”、“枢轴”。我们可以看一]]></description><category></category></item><item><title><![CDATA[图的链式存储结构解析（邻接表、逆邻接表、十字链表、邻接多重表）]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/118559980</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/118559980</guid><author>LRY89757</author><pubDate>Wed, 07 Jul 2021 23:30:30 +0800</pubDate><description><![CDATA[图的矩阵表示法比较消耗空间，需要花费$n2n^2n2$个单元存储边（弧）。在边数较少的情况下比较浪费。我们这里来讨论图的链式存储结构。
图的链式结构主要有四类：邻接表、逆邻接表、十字链表、邻接多重表。
前两个算比较好理解的，后两个更复杂一点。
目录邻接表无向图的邻接表有向图的邻接表逆邻接表十字链表存储结构构造十字链表十字链表结构性质邻接多重表存储结构构造邻接多重表
邻接表

实际上邻接表都是使用数组来存储顶点，然后对每一个顶点建立一个单链表，第i个但链表中的节点表示依附于顶点vi的边（对有向图是以vi为尾的]]></description><category></category></item><item><title><![CDATA[动态查找表之二叉排序树和平衡二叉树（图解+代码详解）]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/118500355</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/118500355</guid><author>LRY89757</author><pubDate>Mon, 05 Jul 2021 22:38:00 +0800</pubDate><description><![CDATA[动态查找表：与静态查找表不同的是，动态查找表是在查找过程中动态生成的，即对于给定值key, 若表中存在其关键字等于key的记录，则查找成功返回，否则插入关键字等于key的记录。
主要分为：二叉排序树、平衡二叉树、B-和B+树。
我们这里主要分析讨论前两种。
二叉排序树

定义
定义：二叉排序树，又称二叉查找树。或者是一颗空树，或者是满足以下性质的二叉树：

若其左子树不空，则左子树上所有结点的值均小于它的根结点的值；
若其右子树不空，则右子树上所有结点的值均大于它的根结点的值
其左、右子树也分别为二叉排序树]]></description><category></category></item><item><title><![CDATA[数据结构各类排序算法详解+代码分析]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/118370899</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/118370899</guid><author>LRY89757</author><pubDate>Wed, 30 Jun 2021 22:34:30 +0800</pubDate><description><![CDATA[数据结构各类排序算法详解+代码分析
前言
不知不觉，数据结构已经学完了，博主也马上大二了????时间过得太快了????，但是数据结构学得确实不太好，楼主花了将近一天的时间整理了一下排序的有关算法。希望对大家也有所帮助。
目录数据结构各类排序算法详解+代码分析前言插入排序基本思想直接插入排序折半插入排序二路排序希尔排序快速排序选择排序基本思想简单选择排序锦标赛排序堆排序堆定义建堆堆排序算法代码解析归并排序基数排序总结排序方法比较方法选择写在后面

插入排序

基本思想
每步将一个待排序记录，按其关键码大小，插]]></description><category></category></item><item><title><![CDATA[上海交大概率论数理统计大作业代码实现解析]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/117522727</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/117522727</guid><author>LRY89757</author><pubDate>Thu, 03 Jun 2021 20:49:57 +0800</pubDate><description><![CDATA[上海交大概率论数理统计大作业代码实现解析
前言
前些日子有上交小姐姐概率论与数理统计课程结课了，有一个大作业要做，题目要求使用matlab或者python画图分析并统计有关数据。上海交大不亏是我们这种民办三本比不了的，真人上人，小姐姐根本就没学过编程大作业就要求开始写代码画图。别看博主现在觉得这门作业挺有意思，如果这是博主的概率论大作业，博主估计就呵呵了。于是——小姐姐就想起了我这个高中为数不多的程序猿同学（????老工具人了）。华科真人下人，博主概率论才刚开课，也不怎么会用代码画图。但是想起我在小姐姐心目]]></description><category></category></item><item><title><![CDATA[Numpy实现一个简单的机器学习模型]]></title><link>https://blog.youkuaiyun.com/LRY89757/article/details/117430504</link><guid>https://blog.youkuaiyun.com/LRY89757/article/details/117430504</guid><author>LRY89757</author><pubDate>Tue, 01 Jun 2021 20:13:22 +0800</pubDate><description><![CDATA[Numpy实现一个简单的机器学习模型
本实例使用numpy实现机器学习，相对于pytorch这类包而言需要花费的代码多一点，但是每一步都是透明的，有利于理解每一步工作原理.
首先我们应该明确基本步骤：

基于函数式y = 3x ^ 2 + 2 得到一些数据，另外加上一些噪音数据到达另一组数据y。
构建一个机器学习模型来学习表达式y =  wx^2 + b 的两个参数w 、b .利用数组x, y的数据为训练数据。
采用梯度下降法来通过多次迭代学习到w、b的值。

导入必要库
import numpy as n]]></description><category></category></item></channel></rss>