文章 32
评论 338
浏览 51830
博客更名

博客更名

前言 由于一系列原因,最主要的是突然被百度恶心到了,虽然之前也一直恶心着(PS:百度搜索-金戋就知道了) ,但是突然我就受不了,所以决定更换 ID 金戋(jinjian/jianjianh) => 墨殇(InkDP),墨殇诞生于:黑客派社区 -- 悬赏一个新 ID 墨殇是一种鸟,生在洛水之滨,墨殇百年一生。他们一旦起飞就不能停了,直到累的吐血才休息一会,继续往前飞。 很喜欢墨殇的的寓意,虽然这两个字听起来很悲 站点更换 博客名称:金戋博客 => 墨殇的技术博客 github:金戋 => 墨殇 黑客派:金戋 => 墨殇 持续更新中 新的图标

《天才在左,疯子在右》章节摘录

《天才在左,疯子在右》章节摘录

女人的星球 我推门进来的时候,吓了他一大跳,还没等我看清,他人就躲到桌子底下去了,说实话我也被吓了一跳。 关上门后我把资料本子、录音笔放在桌上,并没直接坐下,而是蹲下看着他。我怕他在桌子底下咬我——有过先例。 他被吓坏了,缩在桌子下拼命哆嗦着,惊恐不安地四下看。 我:“出来吧,门我锁好了,没有女人。” 他只是摇头不说话。 我:“真的没有,我确定,你可以出来看一下,就看一眼,好吗?” 跟这个患者接触大约2个月了。他有焦虑+严重的恐惧症,还失眠,而恐惧的对象是女人。 他小心地探头看了下四周,谨慎地后退爬了出去,然后蹲坐在椅子上,紧紧地抱着自己双膝,惊魂未定地看着我。 我:“你看,没有女人吧。” 他:“你真的是男的?你脱了裤子我看看?” 我:“……我是男的,这点我可以确认。你忘了我了?” 他:“你还有什么证据?” 我:“我今天特地没刮脸,你可以看到啊,这个胡子是真的,不是粘上去的。你见过女人长胡子吗?就算汗毛重也不会重成我这样吧?” 他狐疑地盯着我的脸看了好一阵。 他:“上次她们派了个大胡子女人来骗我。” 我:“没有的,上次那个大胡子是你的主治医师,他可是地道的男人。” 他努力在想着。我观察....

《天才在左,疯子在右》阅读笔记

《天才在左,疯子在右》阅读笔记

《天才在左,疯子在右》阅读笔记

solo-nexmoe 图标详解

solo-nexmoe 图标详解

前言 本帖记录官方solo-nexmoe内所对应字体图标值 solo-home solo-list solo-tags solo-tag solo-github solo-about solo-search solo-rss solo-calendarl solo-category solo-left solo-right solo-browse solo-heat solo-about2 solo-top solo-login solo-logout solo-spin solo-comment solo-gotop solo- 自定义导航不设置图标时显示

日刷leetcode--简单版(三)

日刷leetcode--简单版(三)

返回总目录 日刷leetcode–简单版 58. 最后一个单词的长度 题目描述 解题思路 定义一个变量统计,从前往后遍历,遇到空格归零就可以了,注意处理最后几个个字符全为空格的情况 定义一个变量统计,从后往前便利,虽然时间复杂度同为 O(n),但是第二个明显快很多 示例代码 func lengthOfLastWord(s string) int { var count int for i:= len(s)-1; i >= 0; i-- { if s[i] == 32{ if count == 0 { continue }else{ break } } count ++ } return count } 运行结果 执行用时 :0 ms, 在所有 Go 提交中击败了 100.00% 的用户 内存消耗 :2.2 MB, 在所有 Go 提交中击败了 39.13% 的用户 66.加一 题目描述 解题思路 从后面往前面循环,最后以一位加 1 即可,处理好末尾9与999 func plusOne(digits []int) []int { c := 1 // 定义一个变量用....

20190809 TGIF

20190809 TGIF

史上最水的TGIF来了 想抢这个好几次了,可是每次都是在拥挤的地铁里就被人抢了,今天居然还在,既然抢到了就水一篇吧。 不知不觉来社区已经67天了,想起注册社区,搭建博客的时候我还在成都。还坐在办公室里悠闲的摸鱼,划水,想着回到家里晚上吃着女朋友做的饭菜,妙啊。 转眼间,两个月的时间,我已经来到广州工作,也入职了一个月,也成功从PHP转成了GO,看起来似乎完成了来广州的目的,然后女朋友去了新疆,又开始了异地。 初来广州时,我踌躇满志,幻想着来到这边之后的一切一切。一开始打算用一个月的时间来找工作,毕竟我知道刚从成都跑到广州来的时候状态有多么的不好,毕竟在成都真的是天天摸鱼划水,太久没写代码,啥都忘了。可以一边面试一边总结,这次一定要找到一个称心如意的工作,毕竟前两次选择的工作都过于草率,也很不利于自己以后的发展。记得是晚上11点多到的广州,很讽刺的是我父母都在这边却并没有人来接我,虽然早知如此,但多少还是有一丝的遗憾吧,最后那晚我去了我姑姑家,第二天,我把箱子扔到我爸那里,就直接去面试了。 来广州后的第一场面试,记得那天在下了很大的雨,去面试的路上鞋子都湿透了,心里在想下雨太难受了,还是....

算法的时间复杂度计算

算法的时间复杂度计算

写在前面    时间复杂度与空间复杂度直接决定着一个算法的好坏,而大多时候在设计算法是时间复杂度要优先于空间复杂度。 时间复杂度是什么(以下内容来着维基百科) 在计算机科学中,算法的时间复杂度(Time complexity)是一个函数,它定性描述该算法的运行时间。这是一个代表算法输入值的字符串的长度的函数。时间复杂度常用大O符号表述,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是渐近的,亦即考察输入值大小趋近无穷时的情况。例如,如果一个算法对于任何大小为 n (必须比 n0 大)的输入,它至多需要 5n3 + 3n 的时间运行完毕,那么它的渐近时间复杂度是 O(n3)。 为了计算时间复杂度,我们通常会估计算法的操作单元数量,每个单元运行的时间都是相同的。因此,总运行时间和算法的操作单元数量最多相差一个常量系数。 相同大小的不同输入值仍可能造成算法的运行时间不同,因此我们通常使用算法的最坏情况复杂度,记为 T(n) ,定义为任何大小的输入 n 所需的最大运行时间。另一种较少使用的方法是平均情况复杂度,通常有特别指定才会使用。时间复杂度可以用函数 T(n) 的自....

《追风筝的人》阅读笔记

《追风筝的人》阅读笔记

  离开成都时,励志要成为一个书虫,所以心一横买了Kindle,在买了一个半月后终于看完了第一本书——《追风筝的人》。   “一个不能为自己挺身而出的孩子,长大之后只能是个懦夫”,如其父亲所说少年时的阿米尔确实是一个懦夫,在哈桑被欺凌时没有挺身而出,没有为自己口中的朋友挺身而出,这也成为了两人之间不可逾越的鸿沟。这个时候我试着问了一下自己,如果我是阿米尔我是否会挺身而出,是否会不顾一切的冲出求,而被阿塞弗折磨、欺辱与伤害。哈桑 —— 一个哈扎拉人,所以我理解了阿米尔,在那样的背景下,没有真正的人人平等,即使他们之间的关系如朋友般亲密也无济于事。   在阿富汗遭到俄国入侵后,阿米尔与父亲来到了美国。在这里,他从一个平凡的人开始做起,过着一个普通人的生活,他失去了曾经的优越感,也和自己的父亲有了童年所没有的父子之情,生活过得还是非常幸福。   当接到 拉辛汗电话时,他没有犹豫就走上了自我救赎的道路。在见到拉辛汗后,随之而来的是三观的崩塌,父亲的“偷窃”、哈桑的死亡、故乡的改变。虽有过犹豫,但是阿米尔战胜了自己属于美国人的优越感,走上了自我救赎的道路。   文章除了对任务感情的描写....

日刷leetcode--简单版(二)

日刷leetcode--简单版(二)

返回总目录 日刷leetcode–简单版 26. 删除排序数组中的重复项 题目描述 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。 示例 2: 给定 nums = [0,0,1,1,1,2,2,3,3,4], 函数应该返回新的长度 5, 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。 你不需要考虑数组中超出新长度后面的元素。 说明: 为什么返回数值是整数,但输出的答案是数组呢? 请注意,输入数组是以“引用”方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。 你可以想象内部操作如下: // nums 是以“引用”方式传递的。也就是说,不对实参做任何拷贝 int len = removeDuplicates(nums); // ....

日刷leetcode--简单版系列(目录篇)

日刷leetcode--简单版系列(目录篇)

前言 谨以此贴记录我刷题的过程,那么我为啥要刷题呢 熟悉各互联网公司的算法题目,为找工作做准备。 复习以前学过的编程语言,LeetCode 支持几乎所有主流编程语言,大家可以用不同语言来做题。 熟悉常见的算法和数据结构,LeetCode 提供了交流平台,一些大神会将自己的解法贴出来共享,有些巧妙的解法实在令人叫绝,虽然几乎都是英文,但上面的国人也特别多(中文拼音名字 >_<)。 学习别人的编程思维,加快编程的速度,避免常见的 BUG。 以上内容摘抄自网络,纯属瞎说,真是的原因是: 因为上班工作做完后,不敢明目张胆的摸鱼 下班无聊不想打游戏 算法真的很弱 ...... 时过境迁,上次打开 leetcode 的时候还没有中文版,而现在已经有了--力扣。 由于篇幅的问题,我觉得 5 题一篇,话不多说。 目录: 日刷leetcode--简单版系列(一) 日刷leetcode--简单版系列(二) 日刷leetcode--简单版系列(三) 日刷leetcode--简单版系列(四) 日刷leetcode--简单版系列(五) 日刷leetcode--简单版系列(六)

go 语言圣经练习解答 -- 第四章 (关闭)

go 语言圣经练习解答 -- 第四章 (关闭)

go语言圣经(The Go Programming Language)练习题答案 前言 go语言圣经是一本go入门非常不错的书籍,翻译至The Go Programming Language,本文记录该书章节后练习题答案

日刷leetcode--简单版(一)

日刷leetcode--简单版(一)

返回总目录 日刷leetcode--简单版 1.两数之后 题目描述 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] 解题思路 1 暴力法,双循环相加结果等于 target 就返回 示例代码 func twoSum(nums []int, target int) []int { for i := 0; i < len(nums); i++ { for j := i + 1; j < len(nums); j++ { if nums[i] + nums[j] ==target { return []int{i,j} } } } return nil } 运行结果 执行用时 :56 ms, 在所有 Go 提交中击败了 32.33% 的用户 内存....

【go 语言圣经】练习答案 -- 目录篇 (关闭)

【go 语言圣经】练习答案 -- 目录篇 (关闭)

1.Go语言有时候被描述为“C类似语言”,或者是“21世纪的C语言”。 2.Go语言中和并发编程相关的特性是全新的也是有效的,同时对数据抽象和面向对象编程的支持也很灵活。Go语言同时还集成了自动垃圾收集技术用于更好地管理内存。 3.Go语言尤其适合编写网络服务相关基础设施,同时也适合开发一些工具软件和系统软件。 4.Go语言有足够的类型系统以避免动态语言中那些粗心的类型错误,但是,Go语言的类型系统相比传统的强类型语言又要简洁很多 5.现代计算机是一个并行的机器,Go语言提供了基于CSP的并发特性支持。Go语言的动态栈使得轻量级线程goroutine的初始栈可以很小,顺序通信进程(CSP),在CSP中,程序是一组中间没有共享状态的平行运行的处理过程,它们之间使用管道进行通信和控制同步 6.Go语言的标准库(通常被称为语言自带的电池),提供了清晰的构建模块和公共接口,包含I/O操作、文本处理、图像、密码学、网络和分布式应用程序等,并支持许多标准化的文件格式和编解码协议 7.书中所有的代码都可以从 http://gopl.io 上的Git仓库下载。go get命令根据每个例子的导入路径智能....

Docker导出mysql数据

Docker导出mysql数据

前言   前几天无意中在社区看到一个帖子(记一次清空数据仓库的过程),讲的是自己无意中删库的经历。如文中所讲,大多时候删库这件事我们只是耳闻,并没有遇到过,可要是万一呢,到时候恐怕是追悔莫及,而且mysql也没有oracle的恢复机制,所以备份就成了一个非常有必要的操作。   由于没有相关操作经验,所以从零开始讲如何数据,毕竟我还是比较珍惜我的小博客的。 具体操作   以前也导出过sql文件,但是都是直接用Navicat导出就完事了,但是这次我想实现的是自动备份,最好写成脚本的方式。   基本思路:使用命令将数据库数据从docker容器中导出来,以时间戳命名。最多保持7天,过期文件自动删除。 导出mysql数据 间接导出   mysql 导出数据的命令还是蛮简单的:mysqldump -u 用户名 -p 数据库名 > 导出的文件名,但这是linux里面执行的,我们的放在docker里面,所以要先进入容器,然后执行上述命令。然后你就会惊讶的发现,导出的文件在你的容器里面,然后你再从容器里面copy到你的主机上。这样做会在容器上产生大量sql文件,写定时任务是需要及时清理。 直接导出....

go 语言圣经练习解答 -- 第三章

go 语言圣经练习解答 -- 第三章

go语言圣经(The Go Programming Language)练习题答案 前言 go语言圣经是一本go入门非常不错的书籍,翻译至The Go Programming Language,本文记录该书章节后练习题答案 * 中文pdf获取地址1 中文pdf获取地址2 * 英文原版获取地址 * 中文实体书获取地址 (一个还不赖的盗版书网站) * 本文从第三章练习3.10开始,前面的请查看移步我的CSDN 练习 3.10: 编写一个非递归版本的comma函数,使用bytes.Buffer代替字符串链接操作。 参考书中的comma函数,即实现基本的为数字添加逗号分隔符 确定了第一个逗号位置后,每隔三个数字添加一个逗号,最后末尾会多出来一个逗号,去掉即可 使用bytes.Buffe而非"+" func comma(s string) string { var buffer bytes.Buffer l := len(s) for i := 0; i < len(s); i++ { buffer.WriteString(string(s[i])) // 取余3可以得到第一个插入逗号的......

凡打不倒我的,必使我强大!!!—— 墨殇的技术博客