![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
雨山摆渡人.
这个作者很懒,什么都没留下…
展开
-
插入后的最大值 Go语言
插入后的最大值题目:给你一个非常大的整数 n 和一个整数数字 x ,大整数 n 用一个字符串表示。n 中每一位数字和数字 x 都处于闭区间 [1, 9] 中,且 n 可能表示一个负数 。你打算通过在 n 的十进制表示的任意位置插入 x 来 最大化 n 的数值 。但不能在负号的左边插入 x 。例如,如果 n = 73 且 x = 6 ,那么最佳方案是将 6 插入 7 和 3 之间,使 n = 763 。如果 n = -55 且 x = 2 ,那么最佳方案是将 2 插在第一个原创 2022-04-23 15:40:39 · 165 阅读 · 0 评论 -
相同的树 Go语言
相同的树题目:给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。// 深度优先搜索func isSameTree2(p *TreeNode, q *TreeNode) bool { if p == nil && q == nil { return true } if p == nil || q == nil { return false } if p.Val !=原创 2022-04-21 16:43:27 · 68 阅读 · 0 评论 -
括号匹配 Go语言
括号匹配 Go语言题目:给定一个只包括'(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。// 利用 map 和栈func isValid(s string) bool { n := []byte{} if len(s)%2 == 1 { return false } bracket := map[byte]byte{ ')': '(', ']':原创 2022-04-15 09:48:21 · 349 阅读 · 0 评论 -
利用Go语言实现KMP算法
利用Go语言实现KMP算法原创 2022-04-10 12:36:38 · 1250 阅读 · 0 评论 -
KMP算法详解
KMP算法模式匹配:子串定位运算,即在主串中找出子串出现的位置。在串匹配中,将主串 S 称为目标串,子串 T 称为模式串。如果在主串 S 中能够找到子串 T,则称,匹配成功,返回第一个和子串 T 中第一个字符相等的字符在主串 S 中的序号;否则称为匹配失败,返回 0 。串的存储结构串的存储结构如下:typedef struct { char *ch; // 若非空则按串长分配存储区,否则 ch 为 NULL int length; // 串长度原创 2021-10-09 15:56:52 · 238 阅读 · 0 评论