自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ssh_exchange_identification: Connection closed by remote host

最近虚拟机经常性的无法连接,小部分时候能尝试登上,大部分时候直接就返回。

2023-03-22 23:01:33 810 1

原创 MapReduce实现基本SQL操作伪码描述

mapreduce实现基本sql操作伪码描述

2023-02-25 13:34:51 196

原创 python参数引用传递踩坑实录

python参数引用传递踩坑实录

2022-09-15 10:16:18 266

原创 ImportError: pycurl: libcurl link-time ssl backend (nss) is different from compile-time ssl backend

ImportError: pycurl: libcurl link-time ssl backend (nss) is different from compile-time ssl backend (none/other)

2022-06-03 20:20:01 504

原创 linux中下载nali + 配置golang环境

文章目录下载nali配置golang环境安装nali下载nali进入nali的github主页选择对应版本,这里就直接下载最新版本在linux上解压tar -zxvf nali-0.3.9.tar.gz -C /opt/module/配置golang环境下载golang环境,nali需要预先安装 go >= 1.18wget https://studygolang.com/dl/golang/go1.18.linux-amd64.tar.gz解压rm -rf /usr/lo

2022-04-12 16:32:56 1303

原创 idea设置函数参数提示快捷键

在keymap搜索框键入parameter info右键添加快捷键即可如果设置的快捷键与已有的产生冲突,在搜索框中找到该快捷键然后remove即可。

2022-03-06 19:22:52 1128

原创 python连接elasticsearch报错:elasticsearch.ApiError: ApiError(406, ‘Content-Type header [application/vnd.

解决方式linux上安装的elasticsearch版本为6.6.0,当时在pip安装elasticsearch库的时候直接装的最新版,进行search查询时就报错了,原因在elasticsearch库的版本与linux上的es不匹配,重新pip安装7.13.0版即可pip3 install elasticsearch==7.13.0...

2022-03-05 19:48:43 5149

原创 azkaban脚本执行报错:java.lang.IllegalStateException: Process has not yet started.

问题描述azkaban调度脚本执行时报错:java.lang.IllegalStateException: Process has not yet started. 但是单独执行脚本发现运行正常。问题解决原因在于脚本本身是使用集群执行的,但是之前忘记把所有脚本都分发到其他主机上,被选择用于执行的主机上没有这个文件,因此执行不了脚本内容,因此出现了这个问题。使用azkaban调度,切记先将用到的所有材料分发到集群中。...

2022-03-04 22:03:14 3095

原创 datagrip执行语句结果中出现空行

问题描述执行语句生成的数据末尾出现了一个空行原因因为导入的数据是lzo格式,其所在文件夹下既有数据也有对应的lzo索引。hive会自动进行小文件合并,就将索引文件合并到lzo数据中去了,所以出现了空行,同时也导致后续无法对lzo数据进行切片。解决方式关闭hive的小文件合并功能set hive.input.format=org.apache.hadoop.hive.ql.io.HiveInputFormat;...

2022-02-24 17:37:57 633

原创 windows下安装sasl

由于直接pip安装会报错,因此前往https://www.lfd.uci.edu/~gohlke/pythonlibs/#sasl下载.whl文件注意下载适配的型号(否则会报错is not a supported wheel on this platform),查看适配型号,在命令行键入一下命令(参考https://blog.csdn.net/happywlg123/article/details/107281936)pip debug --verbose下载好的.whl文件放在python目录的

2021-12-19 22:15:52 2668

原创 superset连接hive

问题描述TEST CONNECTION显示参考官网(https://superset.apache.org/docs/databases/installing-database-drivers),在虚拟环境中安装pyhive仍然没用解决方案除了安装pyhive之外,还要安装这几个pip install saslpip install thriftpip install thrift-sasl不使用官方的url,而是采用这种形式hive://hive所在主机的ip地址/数据库名?aut

2021-12-19 20:04:31 2017

原创 shell中的双引号与$

文章目录什么时候用双引号$要不要跟{}字符串中的变量怎么才能被正确解析?什么时候用双引号当参数值本身就带有空格时,如果不加双引号把参数值括起来,那么这个参数值可能会被扩展为多个参数值,而丢失原本的完整值。建议传参时每个参数都使用双引号括起来。例子:比如在脚本中执行bin/hive -e命令假设:sql="select * from table group by id;"不能使用bin/hive -e $sql,而要使用bin/hive -e "$sql"。因为第一种方式相当于执行bin/

2021-12-01 21:30:06 1956

原创 Leetcode 9. 回文数 / scala实现

题目解决方案解一:转换为字符串再进行判断object Solution { def isPalindrome(x: Int): Boolean = { // 有负号必然不是 if (x < 0) return false // 只有一个数字的数值肯定是 if (0 <= x && x <= 9) return true val s = x.toString for (i <- 0

2021-11-26 20:42:32 1155

原创 Linux下配置ssh免密登录github

1. 生成ssh key键入命令shell ssh-keygen -t rsa -C github注册使用的邮箱因为之前已经配置了一个ssh,所以我这里就键入了一个新名称之后一路回车就行,完成后进入.ssh目录下,检查是否生成新文件。成功创建则会多出这两个文件2. 管理本地多个ssh.ssh文件夹下创建config文件vim config文件内键入# githubHost github.com User git HostName github.com

2021-11-16 20:27:38 1276

原创 superset db upgrade报错,显示非法指令,Illegal instruction (core dumped)with exit code 132

问题描述:问题原因:cpu不支持AVX指令集,如何判断cpu是否支持AVX指令集键入命令sudo cat /proc/cpuinfo | grep avx如果支持avx,则会在返回中高亮avx,否则返回空。不支持avx的????支持avx的????参考:https://github.com/apache/superset/issues/9653https://stackoverflow.com/questions/60930359/docker-containers-exit-co

2021-11-11 17:30:55 958

原创 sublime编辑linux文件,执行文件报错:/bin/bash^M: 坏的解释器: 没有那个文件或目录

问题原因:在windows下编辑过的文件,换行符为\n\r,而Linux的换行符为\n。解决方式:修改sublime的换行符选择view - line endings - unix2. 也可以直接使用命令(参考https://blog.csdn.net/qq_41547659/article/details/112555775)sed -i 's/\r$//' 文件名...

2021-11-11 08:58:37 915

原创 python 获取全年日期及日期详情

import datetime"""判断节假日采用chinese_calendar库,支持 2004年 至 2022年,包括 2020年 的春节延长,参考 https://pypi.org/project/chinesecalendar/#description。也可以直接请求节假日数据接口"""from chinese_calendar import is_holidayyear = 2021# 得到一年中所有的日期def get_whole_year(year=year):

2021-11-03 11:53:37 3583

原创 python代码2转3

找到python的安装路径,使用pycharm的可以在控制台上找到。进入安装路径D:\ANACONDA,找到Scripts文件夹下的2to3.py在该路径下打开命令行,键入2to3 -w 待转换的文件路径其中-w表示将转换结果写回文件中...

2021-10-13 11:20:49 59

原创 Leetcode 98. 验证二叉搜索树 / python实现

文章目录*题目*在这里插入图片描述*代码实现*题目代码实现"""解法1:利用二叉树的性质:中序遍历的结果为升序序列(无重复数字的)"""class Solution: def isValidBST(self, root: TreeNode) -> bool: r = [] def order(root): if not root: return order(root.l

2021-04-16 20:07:26 99

原创 Leetcode 139. 单词拆分 / 动态规划 / python实现

文章目录*题目**代码实现*题目注意:输入:s = “cars”, wordDict = [“car”,“ca”,“rs”]输出:true解释:"cars"可以拆分为“ca”、“rs”代码实现(动态规划一看就会,一写就废????)class Solution: def wordBreak(self, s: str, wordDict) -> bool: # dp[i]表示截止到第i个元素(不包括i)能否分割为wordDict dp = [F

2021-04-15 20:45:25 145

原创 关键路径(求解)知识点

简介源点:图中有且仅有一个入度为0的点称为源点汇点:图中有且仅有一个出度为0的点成为汇点关键路径:从源点开始到汇点结束的且有最大路径长度的路径事件最早开始事件:源点开始时间为0某事件多条路径重合时候,选择时间大的事件最迟开始事件:倒推,从汇点向源点推导汇点最迟开始时间 = 最早开始时间某事件多条路径重合时候,选择时间小的活动最早开始时间:与活动起点的最早开始时间相同活动最迟开始时间:等于该活动终点的最迟开始时间 - 活动持续时间其中关键路径由-活动最迟与最早开始时间重叠

2020-09-08 17:17:00 971

原创 狄克斯特拉算法 / 带权图的最短路径 / python实现

简述狄克斯特拉算法用于找到带权图中,某点到其他各点的最短路径(BFS用于找出无权图中的最短路径)只适用于有向无环图无负权重图,因为狄克斯特拉算法在处理节点时候采用贪心思想,即某节点一旦被处理了,就说明不存在到达该节点更小开销的路径(存在负权重可以采用贝尔曼·福德算法)"""贝尔曼·福德算法1) 初始化时起点到其他点的距离为对应权重,无法直接到达的点则初始化为∞2) 起点到自身的距离为0 (D[起点] = 0)3) 对每条边进行v-1次松弛(v为节点个数)"""for i in r

2020-09-07 11:37:15 959

原创 二叉树 - 某节点到其左右子树中叶子结点的距离 / Leetcode 1530. 好叶子节点对的数量

# 获取当前节点左右子树中叶子节点到该点的距离 def DFS(root): if not root: return {} if not root.left and not root.right: return {root: 0} left_leaf = DFS(root.left) right_leaf = DFS...

2020-08-28 21:22:13 190

原创 Leetcode 最大化最小值问题总结 / python实现

文章目录*题目**解题思路**代码实现*题目该类型的题目5489. 两球之间的磁力410. 分割数组的最大值LCP 12. 小张刷题计划(410变体,这个才应该是困难吧????)875. 爱吃香蕉的珂珂解题思路最大化最小值 / 最小化最大值 都是采用二分方法,只是二分过程中一旦某个值满足条件后,移动方向的不同,最大化最小值是放大左端的值,最小化最大值是缩小右端的值。这类题目(根据目前见到的)一般是将数组划分为m个连续的子数组。或者题目中已经提及了最大化最小值这种关键词。代码实现

2020-08-16 17:43:36 1360

原创 Leetcode 698. 划分为k个相等的子集 / 416. 分割等和子集 / 划分总和相同的子集 / python实现

文章目录*题目**解题思路**代码实现*题目解题思路题416是题698(k=2时)的特例。划分为k个相等的子集的思路:直接DFS判断是否能够划分成为k个子集,重点在于剪枝,即需要将数组从大到小进行排序。为什么不是从小到大排序?也是可以的,但是(在测试用例中)从大到小可以减少回溯的次数,大值+大值+… >= 目标值的几率更大。当只划分为了两个集合时,可以直接套用上面划分为k个相等子集的代码,也可以利用01背包动态规划。动态规划思路:只要当前数组中能填充背包容量为sum(nums) /

2020-08-12 18:24:55 747

原创 Leetcode 207. 课程表 / 判断有(无)向图是否存在环路 / python实现

文章目录*题目**解题思路**代码实现*题目解题思路拓扑排序首先记录所有点的出入度情况,将所有入度为0的点加入队列中,当队列不为空的时候,每次取出队首的点,遍历其邻接点,使得每一个邻接点的入度-1。如果所有曾在队列中的点等于课程数量,说明不存在环路。DFS,通过记录状态来判断是否存在环路。代码实现"""拓扑排序1. 将所有入度为0的节点入队列2. 每次从队列取出一个节点,并将这个节点的所有临界点的入度-13. 判断已经处理过的节点是否和课程数量相同"""from col

2020-08-05 22:04:51 688

原创 Leetcode 350. 两个数组的交集 II / python实现

文章目录*题目**解题思路**代码实现*题目解题思路只想到复杂度相当高的动态规划(和最长公共子序列的做法几乎一致)和暴力(;′⌒`)。排序再使用双指针很妙,哈希表的实现和双重循环思路其实是类似的。代码实现"""哈希表"""from collections import Counterclass Solution: def intersect(self, nums1, nums2): nums1 = Counter(nums1) res = []

2020-07-13 18:10:07 185

原创 Leetcode 1414. 和为 K 的最少斐波那契数字数目 / python实现

文章目录*题目**解题思路**代码实现*题目解题思路因为一定存在解,使用贪心。先构建斐波那契数列,因为k≤10^9,所以数组长度只有四十左右,每次在斐波那契数列中选取≤当前k的值,循环直至当前k能在斐波那契数列中找到。(具体的数学证明题解区讲的很详细)代码实现class Solution: def findMinFibonacciNumbers(self, k: int) -> int: nums = [1, 1] # 构建斐波那契数列

2020-07-12 19:57:50 191

原创 Leetcode 386. 字典序排数 / python实现

文章目录*题目**解题思路**代码实现*题目解题思路DFS1-9的数字可以构建九颗树,字典序相当于顺序的对每一颗树进行前序遍历。每个节点下一层的元素就是当前数值后面加上[0, 9]的数值,eg:1的下一层就是 10、11、12…19自带排序库代码实现DFSclass Solution: def lexicalOrder(self, n: int): self.res = [] def DFS(i): i = int(

2020-07-06 08:41:59 182

原创 Leetcode 525. 连续数组 / 01数组前缀和

文章目录*题目**解题思路**代码实现*题目解题思路第一反映是前缀和,但是双重循环超时了。看到评论区的思路是将0看作是-1,虽然仍然是前缀和的思想,但是前缀和数组从非降序变为了有正有负,所以一次遍历即可。利用哈希表每次记录第一次遇到的前缀和所对应的下标,如果遇到同一个前缀和两次,就说明两个前缀和之间的区间中0、1个数是相等的(因为两者前缀和相减为0)初始化时候,map[0] = -1,这样就保证了如果[0, i]区间中的数值已经满足了要求,其长度也会被记录进去代码实现from collec

2020-06-28 19:38:01 168

原创 Leetcode 41. 缺失的第一个正数 / 利用数组本身充当哈希表

文章目录*题目**解题思路**代码实现*题目解题思路题目相当于:找出[1, 数组长度+1]中最小的且没有在数组中出现过的元素。利用数组本身充当哈希表:将1放在下标为0处,2放在下标为1处…这样保证如果数值在[1, 数组长度+1]范围内的,都在其对应的位置上,一旦某下标i处对应元素不是i+1,就说明数组中缺失了i+1这个元素。代码实现基本注释版本class Solution: def firstMissingPositive(self, nums: List[int]) ->

2020-06-27 19:06:43 115

原创 Leetcode 1367. 二叉树中的列表 / 面试题 04.10. 检查子树 / 判断子树问题

文章目录*题目**解题思路**代码实现*题目解题思路面试题04.10 - 标准的检查子树问题:遍历大的一颗树,一旦发现了和小树(待检测子树)根节点相同的结点,再来判断两者的左子树和右子树是否相等,可以发现这是一个递归的过程。二叉树中的列表:同样也是遍历树,一旦发现和链表头数值相同的结点,再来判断该树的下一层,其左右结点中是否有链表下一个结点数值,如果有,再判断子节点的子节点中是否有下下一个结点的数值,仍然是一个递归的过程。和标准子树问题不同,一旦找到可能的结点,只要其子节点中有一个

2020-06-26 19:00:36 193

原创 Leetcode 1405. 最长快乐字符串 / 984. 不含 AAA 或 BBB 的字符串 / python实现

文章目录*题目**解题思路**代码实现*题目同一种题型,思路也是相同的解题思路解法一:贪心,每次在都插入当前剩余最多的元素,只有不能继续写入该元素时,才转向另外的元素(仍是剩下中最大的)进行插入。解法二:插入法,以a = 1, b = 2, c = 7为例首先构建基础串=“abc(所有元素)” × 1(最少元素对应的数值)+ “bc”(最少数值字母已经用光了,继续用剩下的字母来构造) × 1(第二少元素剩下的数值),最终的基础串为"abcbc" => 用数值最小到数值第二大对应的字母

2020-06-25 18:18:18 255

原创 01背包 / 完全背包笔记

文章目录*前言**代码实现**初始化问题(一维数组)**求方案数(以01背包为例)**背包方案数例题**背包问题在leetcode中的题目*前言观看闫神的背包九讲的一点点笔记代码实现01背包的二维实现// 外层循环是可以选择物品for(int i=1; i<=n; i++){ // 内层循环时背包的容量 for(int v=w[i]; v<=V;v++){ /* dp[i][v]表示前i个元素总容量为v时最大的价值 对于第i个元素只有两种选择:选or不选,

2020-06-21 16:27:40 174

原创 idea创建springboot项目并启动 / 超详细步骤

前言刚刚接触到IDEA,创建springboot总出现各种问题,下面记录一下成功的创建过程。作者纯小白,所以这个创建过程可能存在可以精简的部分,仅希望给看到的人提供一点修改的思路。具体过程首先new一个Project不用修改直接Next根据需要进行修改,也可以直接Next这里以Spring Web为例,然后Next,完成创建。创建好的项目,看了不少教程,但发现一些人创建之后的文件结构和我这里不同。可以看到这里是没有启动程序的小三角的。接下来的步骤就是为了出现启动的小三角,首先点击F

2020-06-15 10:25:47 7765 2

原创 Leetcode 435. 无重叠区间 / python实现

文章目录*题目**解题思路**代码实现*题目解题思路要求找到移除的最小数量,如果区间之间发生重叠我们需要移除的就应该为范围更大的一个区间,因为这样的区间与后序(顺序排序下)区间更可能再次发生重叠。如何界定范围更大的区间?完全包含另一个区间的与另一个区间重叠了一部分,同时整体靠后的区间如下图,其中与A发生重叠时候,B、C是我们需要移除的区间,因为更可能和后面的区间再次发生重叠。同时因为需要进行区间的比较,所以要采用全局变量记录当前的最小区间,只有不发生重叠的时候,才更新当前的最小区间。

2020-05-10 09:51:44 512 1

原创 最长公共子序列、最长公共子数组 / 动态规划 / python实现

以1143. 最长公共子序列、718. 最长重复子数组为例题目子序列和子数组子序列:由数组中不连续的元素组成的数组。eg:[1, 2, 3, 4]子序列可为[1, 4]子数组:数组中连续元素组成的数组。eg:[1, 2, 3, 4]子数组可以为[1, 2, 3]代码实现两者的代码非常相似"""最长公共子数组(连续)- 动态规划"""class Solution: ...

2020-05-05 20:27:43 549

原创 Leetcode 450. 删除二叉搜索树中的节点 / python实现

文章目录*题目**解题思路**代码实现*题目解题思路删除二叉搜索树中结点分为三种情况:删除结点为叶子结点 - 直接删除结点即可删除结点只有一个子节点 - 用子节点代替被删除结点删除的结点有左右结点· 用左子树的最右结点A(也就是左子树中最大的结点)代替被删除结点,在树中删除结点A。· 用右子树的最左结点B(右子树中最小的结点)代替被删除结点,在树中删除结点B。可以发现当被删...

2020-05-02 11:31:48 316

原创 Leetcode 179. 最大数 / python实现

文章目录*题目**解题思路**代码实现*题目解题思路从示例中可以发现就是让我们对数组进行某种排序。很直观的可以发现,相当于对数的每一位进行比较,如果前面位数都相同,数A某一位大于数B的相同位数就表示A应该放在数组的前面,eg:9大于30。难点在于判断只有一位不同的数字,eg:3和30,就采用直接拼接两者,看哪一种组合更大,就知道谁应该在前面,继而将这种思路推广到全部数字的比较。代码...

2020-05-01 22:17:15 572

原创 Leetcode 684. 冗余连接 / 最小生成树 - Krustal / python实现

文章目录*题目**解题思路**Krustal算法**代码实现*题目解题思路从题意中可以看出来就是找出无向图中的最小生成树,可以采用prim和krustal。Krustal算法Krustal算法:利用并查集,初始时每个点的祖先都是自身,将每一个点看作是一棵独立的树。(无向图)每次取出一条边,如果两端点的祖先结点不同,则表明是两颗不同的树,合并两棵树(一个点变成另一个点的祖先),处理完整...

2020-04-29 09:52:15 426

空空如也

空空如也

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

TA关注的人

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