- 博客(634)
- 资源 (1)
- 收藏
- 关注
原创 #提高#易错坑#maven无法导入父工程的依赖版本依赖
回答:因为是编译器自动生成的,idea 太笨了,还要手动修改一下,在 pom 中声明子模块, 子模块声明父模块的位置声明是父模块的子模块导入测试也正常perfect本次测试的案例:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2020-08-11 21:47:01 2729
转载 mysql 获取每组的前N项记录
按照 group 进行分组,每组 里面 a 和 b进行比较 ,这段逻辑是 b里面比 a大的不超过2个,就筛选出来,即筛选出最大的前2个人。找到 a2 比 a大的不超过两个的记录就筛选出来。
2023-06-27 16:19:00 407
原创 golang判空的几种方法
如果有类型的指针转为了 interface{} 之后, 其实现原理是 go 用 一个 eface的结构体表示 interface{} 类型, eface 有两个字段,一个是type表示类型,一个是 unsafe.Pointer 用来表示指针指向的地址, 可以用 unsafe.Pointer 的方式转回来,然后单独判断 interface{} 值指向的地址即可。带类型的指针 转成 interface{} 后 无法在判断是否为空指针, 解决的方法。
2022-12-14 15:04:53 3682 1
原创 vscode remote ssh 连接出错
vscode remote ssh 连接出错问题:连接远程服务器,显示 试图写入管道出错解决方法,手动配置 ssh.path 的 路径git bash 命令行 敲入 where ssh ,选择 git 自带的 ssh在 settings.json 中配置 ssh 的路径 "remote.SSH.path": "F:/software/region0/scoop/apps/git/2.36.1.windows.1/usr/bin/ssh.exe",...
2022-05-30 14:25:15 332
原创 img 获取二次元图片地址
python 获取二次元图片地址使用 python 调用图片地址接口,然后将地址之间粘贴到 clipboard 。import requests#importing the moduleimport pyperclipres = requests.get('https://api.mtyqx.cn/api/random.php?return=json') imgurl = res.json().get('imgurl')print(imgurl)# copies all the da
2022-05-17 23:17:06 388
原创 vimrc的一些配置
gvim 的配置记录"" Source your .vimrc set scrolloff=5" 搜索相关 colors desert" set guifontwide=Fixedsys:h18set encoding=utf-8" set guifontset= " set guifont=Consolas:h12" set guifontwide=Microsoft\ Yahei:h12" set guifont=YaHei\ Consolas\ Hybrid\ 18set l
2022-04-26 21:15:52 230
原创 qt程序打包记录
qt程序打包记录选择 release ,点击那个锤子 就可以打包出一个exe将 exe 拿出来拷贝到一个目录点击 这个 Qt的程序,然后再 cd到那个 exe 的目录,然后输入 windeployqt 就可以打包F:\software8\>cd D:\ASUS\Documents\project\QT\outF:\software8\>cd /d D:\ASUS\Documents\project\QT\out D:\ASUS\Documents\project\QT\
2022-04-12 00:26:31 121
原创 cpp 调用dll写法
go语言编译 dllSET CGO_ENABLED=1go build -ldflags "-w -s" -o searchEngine.dll -buildmode=c-shared shared.go//export Initfunc Init(ppath string) { mu.Lock() defer mu.Unlock() change = true loadPath = ppath}//export RemoveIndexfunc RemoveIndex
2022-04-10 22:51:29 720
原创 rust数据结构入门
rust 数据结构入门链表翻转给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。示例 1:输入:head = [1,2,3,4,5]输出:[5,4,3,2,1]示例 2:输入:head = [1,2]输出:[2,1]示例 3:输入:head = []输出:[]提示:链表中节点的数目范围是 [0, 5000]-5000 <= Node.val <= 5000进阶:链表可以选用迭代或递归方式完成反转。你能否用两种方法解决这道题?// Definiti
2022-03-30 19:00:46 273
原创 golang epoll 实现简单的tcp server
golang epoll 实现 tcp serverpackage epollimport ( "log" "net" "reflect" "sync" "syscall" "golang.org/x/sys/unix")func SetLimit() (err error) { var rLimit syscall.Rlimit if err = syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rLimit); err != n
2022-01-24 13:50:30 886
原创 golang实现AVL树算法 【AVL树】【算法】【golang】
golang avl树算法package mainimport ( "fmt")var nodeCnt inttype Node struct { val int left, right *Node h int}func max(i, j int) int { if i > j { return i } return j}func min(i, j int) int { if i < j { return i
2022-01-19 16:28:21 547
原创 golang实现简单的websocket【golang】【websocket】
golang 实现 websocket具体可以参考GitHub上的代码package websocketimport ( "bytes" "github.com/gorilla/websocket" "log" "net/http" "time")var ( newline = []byte{'\n'} space = []byte{' '} // Time allowed to write a message to the peer. writeWait = 10 *
2022-01-18 16:55:00 3104
原创 和最小的 k 个数对【堆】【golang】【优先队列算法】
golang优先队列算法剑指 Offer II 061. 和最小的 k 个数对Difficulty: **给定两个以升序排列的整数数组 nums1 和 nums2 , 以及一个整数 k 。 定义一对值 (u,v),其中第一个元素来自 nums1,第二个元素来自 nums2 。 请找到和最小的 k 个数对 (u1,v1), (u2,v2) … (uk,vk) 。 示例 1: 输入: nums1 = [1,7,11], nums2 = [2,4,6], k = 3 输出: [1,2],[1,4],
2022-01-18 14:46:17 357
原创 java集合有哪些接口【面试】【经常考】
Java集合类框架的基本接口有哪些?顶层接口有:collection之后的子接口有List,Queue, Set;还有一个单独的Map接口List集合是有序可重复的,支持随即访问,List接口的实现类有LinkedList,ArrayList,VectorLinkedList底层是双向链表,不支持随即访问,但是插入与删除效率较高,ArrayList支持随机访问,但是插入与删除效率较低Vector是线程安全的,它在一些关键方法上加了synchronizedSet集合是无序不可重复的,不支持随机
2022-01-17 20:47:30 647
原创 linux快速查看连接到服务器的ip
ss -an | awk '/tcp/{s[$5]++} END{for (i in s) print i,s[i]}' | sort -k2n# 根据 连接数进行排序
2022-01-17 20:04:18 3031
原创 typescript 工具安装
typescript 工具安装npm install -g typescript tsc main.ts调用 tsc 可以将 ts文件编译为 js文件tsc --init # 生成配置文件参考教程最好将 tsconfig.json 的 strict修改为 false关闭严格模式参考配置console.log('hello world')function greet(person: string, date: string) { console.log(perso
2022-01-17 15:07:48 466
原创 golang 时间语法
golang time包语法 记录func main() { //3s 无法获得锁,就退出,不抢锁了 //for i := 0; i < 20; i++ { // go worker(i) //} //time.Sleep(time.Second*40) //03 和 15等价 fmt.Println(time.Now().Format("2006-01-02 03:04:05")) fmt.Println(time.Now().Format("2006-01-02 15:04:05
2022-01-17 12:40:45 77
原创 redis源码 【sds】【redis源码】
redis string 源码解析具体可以参考 redis 源码 sds.h 这个文件/* Note: sdshdr5 is never used, we just access the flags byte directly. * However is here to document the layout of type 5 SDS strings. *//* 所有的结构体中: * len 表示已使用长度 * alloc 表示可使用长度 * flags 低 3 位保
2022-01-16 23:31:15 800
原创 autohotkey快捷键总结
autohotkey 自定义快捷键总结已经用了一段时间的 autohotkey 了, 觉得挺好用的,这里将 脚本记录下来,方便以后直接用前面代码 是 用 网上找的,后面 加了一下 自己定义的一些快捷键, 比如 capslock + 空格 ,直接跳到下一个单词capslock + backspace 直接 删除一个单词。#SingleInstance, ForceSendMode InputSetWorkingDir, %A_ScriptDir%;====================
2022-01-16 17:48:58 2777 5
原创 对antd table组件的封装,让框架用法更简单一点【react】【毕设总结】【table】【前端】
对 antd 的 table 组件进行封装最近1个月来 都在搞毕设,很多时候前端写的都是 无用,重复性的代码, 对一些框架不熟练,要不停的看文档,效率比较低,这里 按照 自己的想法 ,对 封装了一下。这个是 写后台页面 经常要用到的table 组件import React,{useEffect, useState} from 'react'import { Table } from 'antd'const EasyTable = (props) => { let config = pr
2022-01-15 22:36:47 1463
原创 跳跃游戏【贪心】【dp】【golang】
描述给定一个非负整数数组nums,假定最开始处于下标为0的位置,数组里面的每个元素代表下一跳能够跳跃的最大长度。如果能够跳到数组最后一个位置,则返回true,否则返回false。输入:[2,1,3,3,0,0,100]返回值:true说明:首先位于nums[0]=2,然后可以跳2步,到nums[2]=3的位置,再跳到nums[3]=3的位置,再直接跳到nums[6]=100,可以跳到最后,返回true题目链接package main// import "fmt"/** * 代码中的
2022-01-15 00:47:40 2348
原创 编辑距离【经典题】【dp】【golang】
描述给定两个字符串 str1 和 str2 ,请你算出将 str1 转为 str2 的最少操作数。你可以对字符串进行3种操作:1.插入一个字符2.删除一个字符3.修改一个字符。字符串长度满足 ,保证字符串中只出现小写英文字母。package main// import "fmt"func min(a ...int) int { v:= a[0] for _,t := range a { if v>t { v = t
2022-01-15 00:36:38 427
原创 二进制加法算法 【大数加法】【golang 】
描述给定两个用字符串表示的二进制数,返回他们的和。数据范围:字符串长度满足 ,字符串中只含有 0 和 1,且保证除 0 以外的二进制数没有前导零的情况。输入:“101”,“1”复制返回值:“110”package main// import "fmt"func reverse(a []byte) { for i,j :=0,len(a)-1;i<j;i,j = i+1,j-1 { a[i],a[j] = a[j],a[i] }}func min
2022-01-14 23:46:13 445
原创 剑指 Offer II 009. 乘积小于 K 的子数组【滑动窗口算法, golang版本】
剑指 Offer II 009. 乘积小于 K 的子数组Difficulty: **给定一个正整数数组 nums和整数 k ,请找出该数组内乘积小于 k 的连续的子数组的个数。 示例 1: 输入: nums = [10,5,2,6], k = 100 输出: 8 解释: 8 个乘积小于 100 的子数组分别为: [10], [5], [2], [6], [10,5], [5,2], [2,6], [5,2,6]。 需要注意的是 [10,5,2] 并不是乘积小于100的子数组。 示例 2: 输入: nu
2022-01-14 17:43:11 224
原创 剑指 Offer II 008. 和大于等于 target 的最短子数组【滑动窗口算法-golang版本】
剑指 Offer II 008. 和大于等于 target 的最短子数组Difficulty: **给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [numsl, numsl+1, …, numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,返回 0 。 示例 1: 输入:target = 7, nums = [2,3,1,2,4,3] 输出:2 解释:子数组
2022-01-14 17:30:45 106
原创 剑指 Offer II 007. 数组中和为 0 的三个数【golang】
剑指 Offer II 007. 数组中和为 0 的三个数Difficulty: **给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a ,b ,c ,使得 a + b + c = 0 ?请找出所有和为 0 且 不重复 的三元组。 示例 1: 输入:nums = [-1,0,1,2,-1,-4] 输出:[[-1,-1,2],[-1,0,1]] 示例 2: 输入:nums = [] 输出:[] 示例 3: 输入:nums = [0] 输出:[] 提示: 0 <=
2022-01-14 17:21:29 293
原创 剑指 Offer II 001. 整数除法 【golang】
剑指 Offer II 001. 整数除法Difficulty: **给定两个整数 a 和 b ,求它们的除法的商 a/b ,要求不得使用乘号 ‘*’、除号 ‘/’ 以及求余符号 ‘%’ 。 注意: 整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2 假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231−1]。本题中,如果除法结果溢出,则返回 231 − 1 示例 1: 输
2022-01-14 17:03:42 860
原创 NC91 最长上升子序列(三)
描述给定数组 arr ,设长度为 n ,输出 arr 的最长上升子序列。(如果有多个答案,请输出其中 按数值(注:区别于按单个字符的ASCII码值)进行比较的 字典序最小的那个)输入:[2,1,5,3,6,4,8,9,7]返回值:[1,3,4,8,9]package mainimport "sort"/** * retrun the longest increasing subsequence * @param arr int整型一维数组 the array * @return int
2022-01-13 22:42:21 330
原创 NC88 寻找第K大
描述有一个整数数组,请你根据快速排序的思路,找出数组中第 k 大的数。给定一个整数数组 a ,同时给定它的大小n和要找的 k ,请返回第 k 大的数(包括重复的元素,不用去重),保证答案存在。要求:时间复杂度 O(nlogn),空间复杂度 O(1)数据范围:0\le n \le 10000≤n≤1000, 1 \le K \le n1≤K≤n,数组中每个元素满足 0 \le val \le 100000000≤val≤10000000输入:[1,3,5,2,2],5,3返回值:2packa
2022-01-13 22:28:12 61
原创 NC74 数字在升序数组中出现的次数
描述给定一个长度为 n 的非降序数组和一个非负数整数 k ,要求统计 k 在数组中出现的次数数据范围:0 \le n \le 1000 , 0 \le k \le 1000≤n≤1000,0≤k≤100,数组中每个元素的值满足 0 \le val \le 1000≤val≤100要求:空间复杂度 O(1),时间复杂度 O(logn)输入:[1,2,3,3,3,3,4,5],3 返回值:4package main/** * * @param data int整型一维数组 *
2022-01-13 21:45:34 3287
原创 NC73 数组中出现次数超过一半的数字
描述给一个长度为 n 的数组,数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组[1,2,3,2,2,2,5,4,2]。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。数据范围:n \le 50000n≤50000,数组中元素的值 0 \le val \le 100000≤val≤10000要求:空间复杂度:O(1),时间复杂度 O(n )输入描述:保证数组输入非空,且保证有解package main/** * * @param n
2022-01-13 21:34:34 117
原创 NC69 链表中倒数最后k个结点
描述输入一个长度为 n 的链表,设链表中的元素的值为 ai ,返回该链表中倒数第k个节点。如果该链表长度小于k,请返回一个长度为 0 的链表。数据范围:0 \leq n \leq 10^50≤n≤105,0 \leq a_i \leq 10^90≤ai≤109,0 \leq k \leq 10^90≤k≤109要求:空间复杂度 O(n) ,时间复杂度 O(n)进阶:空间复杂度 O(1) ,时间复杂度 O(n)例如输入{1,2,3,4,5},2时,对应的链表结构如下图所示:p
2022-01-13 21:19:49 257
原创 NC67 汉诺塔问题
汉诺塔问题描述我们有由底至上为从大到小放置的 n 个圆盘,和三个柱子(分别为左/中/右即left/mid/right),开始时所有圆盘都放在左边的柱子上,按照汉诺塔游戏的要求我们要把所有的圆盘都移到右边的柱子上,要求一次只能移动一个圆盘,而且大的圆盘不可以放到小的上面。请实现一个函数打印最优移动轨迹。给定一个 int n ,表示有 n 个圆盘。请返回一个 string 数组,其中的元素依次为每次移动的描述。描述格式为: move from [left/mid/right] to [left/mid
2022-01-13 21:09:12 1749
原创 NC8 二叉树中和为某一值的路径(二)
输入一颗二叉树的根节点root和一个整数expectNumber,找出二叉树中结点值的和为expectNumber的所有路径。1.该题路径定义为从树的根结点开始往下一直到叶子结点所经过的结点2.叶子节点是指没有子节点的节点3.路径只能从父节点到子节点,不能从子节点到父节点4.总节点数目为n如二叉树root为{10,5,12,4,7},expectNumber为22输入:{10,5,12,4,7},22复制返回值:[[10,5,7],[10,12]]复制说明:返回[[10,12],
2022-01-13 00:35:52 108
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人