GO
lightjia
这个作者很懒,什么都没留下…
展开
-
vscode中远程环境Go插件不生效的问题
最近使用vscode远程到机器上出现GO插件无法使用的问题,查看定义跳转不生效。GO插件不生效需要在vscode中设置远程机器上的GOROOT以及GOPATH。如下是vscode中的json配置。关于GO插件下载的问题。远程机器上go env。原创 2022-12-02 10:19:02 · 759 阅读 · 1 评论 -
直击面试之KMP字符串查找
面试时碰到一个算法题,判断一个字符串是不是一段字符的子串,当时不加思索的就写出两段for循环,伪代码如下#src为源串 pat为子串i=0while(i<len(src) && len(src) >== i + len(pat)){ j=0 while(j<len(pat) && i+j<len(src) &am...原创 2020-01-23 09:56:58 · 149 阅读 · 0 评论 -
GO实现文件压缩算法
实现原理 读取文件,统计字符出现次数为权值,构建哈夫曼树,获取每个字符的哈夫曼编码,写入文件。压缩文件头定义type compressHead struct { srclen, dstlen, keymapLen uint32 //源文件字符个数 压缩文件字符个数 哈夫曼编码字符映射个数 patchBit uint8 //...原创 2020-01-16 12:28:58 · 1467 阅读 · 1 评论 -
哈夫曼树构建
哈夫曼树是带权值的树节点结构,且目标节点都存储在叶子节点上。下面使用Go实现哈夫曼树哈弗曼树构建过程将带权值的节点进行排序,形成有序的链表。 取出链表头两个节点,权值相加形成新节点,并加入上述链表中重新排序,两节点分别为构建为左右子树,新创建的节点为父节点。 重复步骤2直到链表节点为1退出构造哈夫曼节点定义type huffmannode struct { value in...原创 2020-01-14 21:20:26 · 609 阅读 · 0 评论 -
直击面试之链表
面试过程中经常会遇到链表相关面试,链表相较于数组区别是节点存储空间不连续,可持续扩展。下面是使用Go进行链表实现。链表结构定义//define the data structtype LinkList struct { pPrev *LinkList //Previous node pointer pNext *LinkList //Next node pointer Value...原创 2020-01-14 15:56:59 · 207 阅读 · 0 评论 -
直击面试之二叉树
面试过程中经常会问到二叉树相关的问题,下面使用Go整理下二叉树相关问题的代码实现树的定义//define the data structtype BinaryTree struct { pLeft *BinaryTree //The Left Branch pRight *BinaryTree //The Right Branch value interface{} //Sto...原创 2020-01-13 14:16:49 · 208 阅读 · 0 评论 -
GO搭建简单HTPP文件下载服务器
package mainimport ( "flag" "io/ioutil" "log" "net/http" "os" "strconv")const DEFAULTPORT = 7788func handerGetFile(w http.ResponseWriter, r *http.Request) { r.ParseForm() //解析参数,默认原创 2018-09-14 11:44:41 · 6218 阅读 · 1 评论 -
GO修改配置文件版本号
Name: ipcsimulatorVersion: 0.1.6Release: 1Summary: ipcsimulatorGroup: Application/SystemLicense: GPL# URL: # Source0: # BuildRoot: %(mktemp -ud %{_tmppath}/%{n...原创 2018-10-18 15:32:53 · 1077 阅读 · 0 评论