随笔分类 -  Golang

Google开源的编程语言,具有与生俱来的高并发处理能力,占用资源少,简洁高效
摘要:http和https的区别 1. 是否加密: HTTPS 是 HTTP 协议的更加安全的版本,通过使用SSL/TLS进行加密传输的数据; 2. 连接方式不同: HTTP(三次握手)和 HTTPS (三次握手+数字证书)连接方式不一样; 3. 端口不同: HTTP 默认的端口是 80和 HTTPS 默认端口是 443 阅读全文
posted @ 2023-05-30 17:27 pangqianjin 阅读(242) 评论(0) 推荐(0) 编辑
摘要:gin中*gin.Context的JSON方法的使用 首先看这个方法,接收一个int类型的状态码和一个任意类型的obj: 第二个参数传结构体,代码示例: package main import ( "github.com/gin-gonic/gin" ) type msg struct { Name 阅读全文
posted @ 2021-12-05 20:54 pangqianjin 阅读(2436) 评论(1) 推荐(0) 编辑
摘要:引入gin go get -u -v github.com/gin-gonic/gin Restful风格示例 package main import ( "github.com/gin-gonic/gin" ) func getBook(c *gin.Context){ c.JSON(200, g 阅读全文
posted @ 2021-12-05 20:12 pangqianjin 阅读(628) 评论(0) 推荐(0) 编辑
摘要:func maxProfit(prices []int) int { var max = 0 for i:=1;i<len(prices);i++{ if prices[i]>prices[i-1]{//只要后一天比前一天有利可图 max += prices[i]-prices[i-1]//就在前一 阅读全文
posted @ 2021-04-09 14:11 pangqianjin 阅读(34) 评论(0) 推荐(0) 编辑
摘要:动态规划+sort.SearchInts() func lengthOfLIS(nums []int) int { dp := []int{} for _, num := range nums { i := sort.SearchInts(dp, num) //min_index if i == l 阅读全文
posted @ 2021-04-09 13:57 pangqianjin 阅读(123) 评论(0) 推荐(0) 编辑
摘要:直接遍历链表,使用set做标记位(标记是否已经到达过) /** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } */ type void struct{} fun 阅读全文
posted @ 2021-04-09 12:28 pangqianjin 阅读(61) 评论(0) 推荐(0) 编辑
摘要:使用切片slice实现 type MinStack struct { stack []int minIndex int length int } /** initialize your data structure here. */ func Constructor() MinStack { ret 阅读全文
posted @ 2021-04-09 10:19 pangqianjin 阅读(31) 评论(0) 推荐(0) 编辑
摘要:func maxProfit(prices []int) int { // 最大利润=第i天卖出-最小买入 var min_input = prices[0]//默认第0天为最小买入 var max_profit = 0//最大利润 for i:=1;i<len(prices);i++{ min_i 阅读全文
posted @ 2021-04-09 08:29 pangqianjin 阅读(35) 评论(0) 推荐(0) 编辑
摘要:/** * Definition for a binary tree node. * type TreeNode struct { * Val int * Left *TreeNode * Right *TreeNode * } */ var res [][]int func levelOrder( 阅读全文
posted @ 2021-04-08 23:01 pangqianjin 阅读(34) 评论(0) 推荐(0) 编辑
摘要:func addStrings(num1 string, num2 string) string { add := 0 //进位标志 ans := ""//最终字符串 var i = len(num1)-1//从末尾开始 var j = len(num2)-1//从末尾开始 for i >= 0 | 阅读全文
posted @ 2021-04-08 21:51 pangqianjin 阅读(84) 评论(0) 推荐(0) 编辑
摘要:func maxSubArray(nums []int) int { var res = nums[0] // 默认第一个是最大和 var sum = 0 // sum为nums[i]前面的元素的最大和 for i:=0;i<len(nums);i++{ sum = max(sum + nums[i 阅读全文
posted @ 2021-04-08 21:02 pangqianjin 阅读(35) 评论(0) 推荐(0) 编辑
摘要:func sortArray(nums []int) []int { quickSort(nums, 0, len(nums)-1) return nums } func quickSort(nums []int, low, high int){ if low<high{ var pivot = p 阅读全文
posted @ 2021-04-08 19:21 pangqianjin 阅读(67) 评论(0) 推荐(0) 编辑
摘要:func lengthOfLongestSubstring(s string)int{ var length = 0 var max = 0 var start = 0//慢指针 var end = 0//快指针 for end<len(s){ tmpChar:=s[end] for i:=star 阅读全文
posted @ 2021-04-08 17:52 pangqianjin 阅读(32) 评论(0) 推荐(0) 编辑
摘要:一般思路 先遍历A链表,记录所有点 再遍历B链表,若已经在记录中存在则返回该节点. /** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } */ type voi 阅读全文
posted @ 2021-04-08 15:12 pangqianjin 阅读(95) 评论(0) 推荐(0) 编辑
摘要:/** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } */ func mergeTwoLists(l1 *ListNode, l2 *ListNode) *Li 阅读全文
posted @ 2021-04-08 14:33 pangqianjin 阅读(102) 评论(0) 推荐(0) 编辑
摘要:给定一些正数(代表长度)组成的数组arr,返回由其中三个 长度组成的面积不为0的三角形的最大周长。 如果不能组成三角形,返回0. 三角形满足条件:a+b>c且a+c>b且b+c>a 贪心算法 先排序(升序) 从后往前选三个数,看是否满足三角形条件 package main import ( "fmt 阅读全文
posted @ 2021-04-08 12:39 pangqianjin 阅读(209) 评论(0) 推荐(0) 编辑
摘要:在柠檬水摊上,每一杯柠檬水的售价为5美元。 顾客排队购买,一次购买一杯。 每一个顾客只买一杯柠檬水,然后向你付5美元、10美元或20美元。 必须给每个顾客正确找零。 **注意:**一开始你手头并没有任何零钱。 如果你能给每位顾客正确找零,则返回true,否则返回false。 贪心算法 顾客给你5块, 阅读全文
posted @ 2021-04-08 12:27 pangqianjin 阅读(150) 评论(0) 推荐(0) 编辑
摘要:给定一个未经排序的整数数组,找到最长且连续递增的子序列,并返回该序列的长度。 如: [1,2,3,2,3,4,3,4,5,6,7] 返回5. 贪心算法 func findLength(nums []int)int{ var start = 0 var maxLength = 0 for i:=1;i 阅读全文
posted @ 2021-04-08 12:10 pangqianjin 阅读(191) 评论(0) 推荐(0) 编辑
摘要:给定一个二叉树,找出其最小深度。 最小深度是从根节点到叶子节点经过的最短路径上的节点数量。 如: 则返回3. 广度优先 func minDepth2(root *TreeNode)int{ if root==nil{//第一次进入时根节点的判断 return 0 } root.deep = 1 va 阅读全文
posted @ 2021-04-08 11:41 pangqianjin 阅读(130) 评论(0) 推荐(0) 编辑
摘要:给定一个二叉树,找出其最小深度。 最小深度是从根节点到叶子节点经过的最短路径上的节点数量。 如: 则返回3. 深度优先 package main import ( "fmt" "math" ) type TreeNode struct{ val int left *TreeNode right *T 阅读全文
posted @ 2021-04-08 10:53 pangqianjin 阅读(115) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示