文章 24
评论 100
浏览 20867
新皮肤 solo-nexmoe

新皮肤 solo-nexmoe

solo-nexmoe 简介 solo-nexmoe是移植Hexo的主题Nexmoe而得到的,皮肤效果基本与原作者一致 项目地址 https://github.com/JinJianh/solo-nexmoe 效果展示 演示 墨殇的技术博客 鼠鼠在碎觉 记录精彩的人生 邯城往事 ... 欢迎将你的博客加入这里 说明 本皮肤依赖于b3log/solo,安装solo可查看从零开始安装 Solo 博客 暂时不支持公告栏---因为我不知道放哪儿 导航栏自定义图标为字体图标,可以前往solo-nexmoe 图标详解查看图标对应名称,直接填入名称即可,目前包内所有图标都被应用了,填写是请删除前缀solo-后填写 接上条,由于solo会自动拉取你的github项目,《我的开源》对应的图标会被覆盖,所以请升级到最新版本,关闭自动拉取设置,然后讲图标设置为github即可 需要自定义新图标直接修改font-icon.scss与font-icon.css,如果你没有node环境,直接修改css也是可以的,最后在导航管理处设置即可,你也可以提issue....

一别两宽,各生欢喜

一别两宽,各生欢喜

该文章已经加密。

日刷leetcode--简单版(五)

日刷leetcode--简单版(五)

返回总目录 日刷leetcode–简单版 119. 杨辉三角 II 题目描述 解题思路 此题与118类似,直接冲118中返回最后一个数组即可,但是要优化到O(k)就显得不是那么容易了 公式: 简单的来说就是前面的数乘以一个分数,这个分数从左到右分别为n/1, (n-1)/2, ..., 2/(n-1), 1/n,比如第3行就是分别乘以3/1,2/2,1/3 这里要注意的是[1]是第0行,而非第一行 示例代码 func getRow(rowIndex int) []int { arr := make([]int,rowIndex+1) if rowIndex == 0{ return arr } arr[0] = 1 for i:= 1; i <= rowIndex; i++ { arr[i] = arr[i-1] * (rowIndex-i+1)/i } return arr } 运行结果 执行用时 :0 ms, 在所有 Go 提交中击败了100.00%的用户 内存消耗 :2 MB, 在所有 Go 提交中击败了90.24%的用户 121. 买卖股票的最佳时机 题目描....

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

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

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

日刷leetcode--简单版(四)

日刷leetcode--简单版(四)

返回总目录 日刷leetcode–简单版 88. 合并两个有序数组 题目描述 解题思路 采用双指针,从前往后,如果nums2中当前值小于nums1中的值,这插入并后移 示例代码 func merge(nums1 []int, m int, nums2 []int, n int) []int { if n == 0 { return nums1 } i, j := 0, 0 for ; i < len(nums1) && j < n; i++ { if nums1[i] > nums2[j] { reverses(nums1[i:]) nums1[i] = nums2[j] j++ } else { continue } } for j < n { nums1[m+j] = nums2[j] j++ } return nums1 } func reverses(nums []int) { for i := len(nums) - 1; i > 0; i-- { nums[i] = nums[i-1] } } 运行结果 执行用时 :....

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- 自定义导航不设置图标时显示

从零开始安装 solo 博客

从零开始安装 solo 博客

之前也写过类似的帖子,但是由于那时自己的各种原因写的不是特别好,所以今天写一个聚合帖,记录从购买服务器到安装solo然后通过nginx反向代理,最后升级https的全过程。此贴献给完全无基础的人,所以废话较多,见谅 1. 购买服务器 首先你得有自己的服务器,有的话就跳过。服务商可选的有很多,比如:阿里云、腾讯云、百度云、还有一些香港的服务商以及国外的(有特殊需求的可以考虑下)。腾讯和阿里对于新用户以及学生都有很大的优惠,配置的话如果只挂solo,买最低配1G1核1M即可。国内的几家都可以关注下,不定时会有很好的优惠活动。我比较推荐阿里云,前段时间刚买了一台3年才668多,不知道活动结束没有。阿里云购买服务器时会要求你安装系统(不知道可不可以不选),推荐选择centos。 2. 购买域名(可不买) 建议还是买一个域名,直接通过IP访问的话不是特别好。购买域名时不要盯着.com,.cn这种比较热门的域名,往往很贵。还有尽量选择可备案的域名,否则就会像鼠鼠在碎觉一样只能挂载444端口上运行。可通过域名.信息查看可备案域名。如果你服务器买着国外的话似乎就不用备案。 3. 域名解析与备案 服务器....

日刷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); // ....

算法的时间复杂度计算

算法的时间复杂度计算

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

《我的前半生》阅读笔记

《我的前半生》阅读笔记

  可能受篇幅影响,这是用Kindle看书以来,看的最快的一本,大概也就一两天的时间。篇幅虽小,但却丝毫不影响该书的质量。   老实说,文章的开头给我的感觉并不是特别好,似乎一部言情小说的样子,“女主上来就被抛弃,然后成为职业女强人,遇到白马王子”这类书太多太多了,看完后发现写的还真就是这么回事。看完后我不由得佩服起作者来,与都市言情几乎同样的剧情路线在作者手中展示出了不一样的魅力。虽说是与都市言情一样的线路,但是剧情还是大有不同,有幸读过一两篇相关题材的书,名字早已忘记,但依稀记得书中女主都是青春靓丽的,年龄不过24左右,在嫁人之前就是商业精英之类的,被抛弃后直接走上人生巅峰的那种。讲道理,这种书YY起来是真的爽,这也就是都市爽文的卖点之一了。   似乎略有偏题,讲回本书,感觉该书很适合女性去看一看,不论你是否是书中女主前半生那样的人,都适合去看一看。初被抛弃时,女主是无助的,绝望的,即将一无所有是多么绝望,所幸,女主是坚强的,那句“人要脸,树要皮。一个女人失去她的丈夫,已经是一最大的难堪与狼狈,我不能再出洋相”让我感受到女主身体最深处的倔强。离开丈夫的女主没有让人失望,从天真阔太转....

博客更名

博客更名

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

日刷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 // 定义一个变量用来进位,进位归....

《诸神的传说:希腊神话故事》读中笔记

《诸神的传说:希腊神话故事》读中笔记

  一开始开始看这本书是打算了解一下希腊神话中的神是什么样的,虽然之前也通过一些视频文字等了解过一些,指导诸如宙斯、雅典娜、阿波罗、波塞冬等,但是没有系统的去了解过,抱着好奇的态度翻开了这本书。      这本书目前翻了几页,现在大概看了10%左右,不打算看下去了。可能由于文化差异的问题,我理解不了希腊神话中某些神的做法。该书号称将希腊神话进行收罗,整理后得出的版本,是很经典的书籍。可是给我的感觉是整个书杂乱无章(不排除存在翻译的原因),还没之前读的儿童读物讲的清楚,再就是篇幅过小,我还来不及记住该文主角是谁,这一章就讲完了。   虽然槽点很多,但是我还是挺喜欢希腊神话中的一些很经典的故事,比如奥德赛、木马计、塞壬的歌声等,可能该书的开头不是特别好,也可能是我带着主观意识去阅读导致的。但是目前不打算看了,毕竟时间有限,以后再看的话会更新该文章。

日刷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%的用户 内存消耗 :3....

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

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

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

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