自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

nomasp

風立ちぬ、いざ生きめやも」

原创 nomasp 博客导读:Lisp/Emacs、Algorithm、Android

ProfileIntroduction to Blog 您能看到这篇博客导读是我的荣幸,本博客会持续更新,感谢您的支持,欢迎您的关注与留言。博客有多个专栏,分别是关于 Android应用开发 、Windows App开发 、 UWP(通用Windows平台)开发 、 SICP习题解 ...

2015-09-17 12:28:38 14553 34

原创 Android内存泄漏检测工具:LeakCanary

一、简介 LeakCanary是一个Square开源的内存泄漏分析工具,如果检测到某个activity有内存泄漏,LeakCanary就会自动显示一个通知。 二、如何使用 2.1)在app下的build.gradle中加入以下依赖 dependencies { debugC...

2018-03-16 15:10:58 259 0

原创 【Hexo异常】fatal: in unpopulated submodule '.deploy_git'

今天又重新搞了下hexo,好久不动它居然报了错。 这种情况可以先安装下相关的依赖: npm install hexo-deployer-git –save 实在不行,就把它删掉,然后重新生成和部署。 rm -rf .deploy_git hexo g hexo d 大功告成!...

2018-03-10 01:23:29 2060 0

原创 Android RTL 及小语种 适配

一、需要单独适配的原因 包括中文、英文、+-等各种符号,都是从左往右显示,而阿拉伯语、波斯语等则是从右往左显示,等等问题都需要进行本地化适配。 二、适配须知 2.1)RTL语言有以下6种: 阿拉伯语 ar Arbic العربية ...

2018-03-10 01:06:31 2138 1

原创 Android内存泄漏检测工具:LeakCanary

一、简介 LeakCanary是一个Square开源的内存泄漏分析工具,如果检测到某个activity有内存泄漏,LeakCanary就会自动显示一个通知。 二、如何使用 2.1)在app下的build.gradle中加入以下依赖 dependencies { debugC...

2018-03-10 00:50:45 384 0

原创 Android N DisplayManager服务解析(二)

Android N DisplayManager服务解析PMS(PowerManagerService):负责协调设备上电源管理功能的服务。 DPC(DisplayPowerController):控制屏幕显示相关的电源状态。处理距离传感器、光纤传感器和屏幕关闭时的动画等。这个组件在其他电源管理服...

2017-08-20 17:43:49 2208 0

原创 What is “origin” in Git?

这是来自StackOverflow上的提问:When I run:git push origin branchnameWhat exactly is origin and why do I have to type it before the branch name?我来将其保存到墙内。一句话概括...

2017-05-05 23:26:47 1048 0

原创 LeetCode 557 Reverse Words in a String III(反转字符串中的单词3)

翻译原文Given a string, you need to reverse the order of characters in each word within a sentence while still preserving whitespace and initial word ord...

2017-05-05 21:49:41 2241 0

原创 LeetCode 561 Array Partition I(数组划分)

翻译原文Given an array of 2n integers, your task is to group these integers into n pairs of integer, say (a1, b1), (a2, b2), …, (an, bn) which makes sum ...

2017-05-05 21:07:49 3375 0

原创 【Common Lisp 入门】配置开发环境 in Emacs

安装 Emacssudo apt-get install emacs安装 Common Lisp 环境sudo apt-get install common-lisp-controller安装 Slimesudo apt-get install slime修改 Emacs 配置文件,以支持 Com...

2016-12-17 12:37:29 2834 0

原创 Chrome macOS 快捷键 from Google Support

标签页和窗口快捷键操作快捷键打开新窗口⌘ + n在隐身模式下打开新窗口⌘ + Shift + n打开新的标签页,并跳转到该标签页⌘ + t重新打开最后关闭的标签页,并跳转到该标签页⌘ + Shift + t跳转到下一个打开的标签页⌘ + Option + 向右箭头键跳转到上一个打开的标签页⌘ + ...

2016-11-12 11:28:43 1350 0

原创 LeetCode 412 Fizz Buzz

翻译写一个程序,其输出表示数字1到n。但是对于3的倍数返回“Fizz”,对于5的倍数返回“Buzz”,对于3和5的倍数返回“FizzBuzz”。原文Write a program that outputs the string representation of numbers from 1 to...

2016-10-17 21:40:00 2529 0

原创 LeetCode 234 Palindrome Linked List(回文链表)(*)

翻译给定一个单链表,判断它是否是回文的。跟进: 你可以只用O(n)的时间和O(1)的空间吗?原文Given a singly linked list, determine if it is a palindrome.Follow up: Could you do it in O(n) time...

2016-09-25 13:12:51 2019 0

原创 LeetCode 299 Bulls and Cows(公牛和母牛)(HashMap)

翻译你在和朋友们玩一个叫做“公牛和母牛”的游戏:你写下一组数字,然后让你的朋友来猜它。每次你朋友做一个猜测,你根据他的猜测给一个提示:他在数字在值和位置上都猜对的数字,就叫做bulls(公牛),猜对了值但位置不对的数字叫做cows(母牛)。你的朋友将使用各种猜测和提示最终猜出来正确的数字。例如: ...

2016-09-17 02:07:49 1728 3

原创 LeetCode 48 Rotate Image(旋转图像)

翻译给定一个n∗nn * n的2D矩阵表示一个图像。顺时针旋转90度。跟进: 你可以就地完成它吗?原文You are given an n x n 2D matrix representing an image.Rotate the image by 90 degrees (clockwise)...

2016-09-05 00:21:17 2558 1

原创 LeetCode 41 First Missing Positive(丢失的第一个正数)

翻译给定一个未排序的整型数组,找出第一个丢失的正数。例如, 给定 [1,2,0][1, 2, 0],返回 33; 给定 [3,4,−1,1][3, 4, -1, 1],返回 22。你的算法应该运行在O(n)O(n)时间复杂度,并且使用常量空间。原文Given an unsorted integ...

2016-09-04 23:07:17 1438 0

原创 LeetCode 229 Majority Element II(主要元素II)(Array)(Boyer–Moore majority vote algorithm)

原文给定一个长度为n的整型数组,找出所有出现超过 ⌊ n/3 ⌋ 次的元素。算法应该运行在线性时间上,且进用O(1)O(1)空间。提示:它可能有多少个主要元素?原文Given an integer array of size n, find all elements that appear mor...

2016-08-29 21:40:40 1869 0

原创 LeetCode 92 Reverse Linked List II(翻转链表II)(Linked List)(*)

翻译将一个链表中位置m和n的节点进行翻转。就地且一次通过。例如 给定 1->2->3->4->5->NULL, m = 2 和n = 4,返回 1->4->3->2->5->NULL.备注: 给定的m和n满足以下条件: 1 <...

2016-08-11 23:26:58 2989 0

原创 LeetCode 82 Remove Duplicates from Sorted List II(从已排序链表中移除重复元素)(Linked List)(*)

翻译给定一个已排序链表,删除所有的重复节点,只保留原始链表中独特的数字。例如, 给定 1->2->3->3->4->4->5, 返回 1->2->5. 给定 1->1->1->2->3, 返回 2->3.原文Give...

2016-08-11 20:25:18 2414 0

原创 LeetCode 143 Reorder List(重排序链表)(Linked List)(*)

翻译给定一个链表: L0→L1→…→Ln-1→Ln, 将其重排序成: L0→Ln→L1→Ln-1→L2→Ln-2→…你必须不改变节点的值就地解决这个问题。例如,给定{1,2,3,4},重排序成{1, 4, 2, 3}。原文Given a singly linked list L: L0→L1→…...

2016-08-10 21:41:38 2418 0

原创 LeetCode 59 Spiral Matrix II(螺旋矩阵II)(Array)

翻译给定一个整数n,生成一个矩阵,要求以螺旋状将1到n2n^2的元素填进其中。例如,给定n=3,你应该返回以下矩阵: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ]原文Given an integer n, generate a square m...

2016-08-07 22:22:30 2112 4

原创 LeetCode 54 Spiral Matrix(螺旋矩阵)(Array)(*)

翻译给定一个m∗nm * n的矩阵(m行 n列),以螺旋状返回矩阵中的所有元素。例如,给定以下矩阵[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ]你应该返回[1,2,3,6,9,8,7,4,5].原文Given a matrix of m x n e...

2016-08-07 22:02:09 3974 4

原创 LeetCode 73 Set Matrix Zeroes(设矩阵元素为0)(Array)(*)

翻译给定一个mmxnn的矩阵matrix,如果其中一个元素为0,那么将其所在的行和列的元素统统设为0。要求就地计算。跟进:你使用了额外的空间吗?一个直接的解决方案是使用O(mn)O(mn)的空间,但这不是个好主意。 一个简单的改进是使用O(m+n)O(m+n)的空间,但这任然不是最好的解决方案。...

2016-08-06 23:07:02 1689 0

原创 如何用Emacs编译C++代码

前言之前做算法题都是在CodeBlocks上写的,为了尽快入门心怡许久的Emacs决定以后都用它来写,而不能仅仅将其作为编辑器。使用C-x C-f来打开/创建文件,写好代码,然后用C-x C-s来保存文件。这是最基本的操作了,比起方向键我更喜欢C-n C-p C-f C-b的方式。其实这篇博客也是...

2016-08-06 21:27:28 3707 0

原创 解决Emacs无法输入中文的问题

根据Fcitx的介绍:当LC_CTYPE为英文时,在Emacs上可能无法使用输入法。好吧,我也遇到了。解决办法很简单:打开下面两个文件并分别在文件结尾添加如下的命令并保存即可。sudo emacs /home/nomasp/.bashrcsudo emacs /etc/environmentLC_...

2016-08-06 21:02:32 5503 0

原创 LeetCode 289 Game of Life(生命游戏)(Array)

翻译根据维基百科的文章介绍:“Game of Life,简称为Life,是一个被英国数学家John Conway在1970年提出的细胞自动分裂器。”给定一个m x n的空间,每个细胞有一个初始状态live(1)或dead(0)。每个细胞通过下面4种方式和周围的8个邻居交互(垂直、水平、交叉):1,...

2016-08-04 20:55:01 3624 0

原创 Android 开发之布局细节对比:Gravity相关

好吧,其实本不必写这篇文章,我打算接下来去写源码方面的。之所以写这个,主要是搜了一下网上已有的博客,都是一堆对属性的描述,我只想说,你们能不能上个图啊。<?xml version="1.0" encoding="utf-8"?> <Line...

2016-08-02 22:39:09 1416 0

原创 Android 开发:如何让App支持RTL模式

前言讲真,好久没写博客了,2016都过了一半了,赶紧重新捡起来。(个人感慨,和内容无关…… 所谓RTL,顾名思义也就是Right To Left,是一种阿拉伯语、波斯语等情况下从右往左的阅读方式。当所开发的App等面向海外用户时需要做这个适配。从Android 4.2开始支持原生的RTL模式,对此...

2016-08-01 16:57:56 1904 0

原创 Android 开发之布局细节对比:RTL模式

前言讲真,好久没写博客了,2016都过了一半了,赶紧重新捡起来。(个人感慨,和内容无关…… 所谓RTL,顾名思义也就是Right To Left,是一种阿拉伯语、波斯语等情况下从右往左的阅读方式。当所开发的App等面向海外用户时需要做这个适配。从Android 4.2开始支持原生的RTL模式,对此...

2016-07-30 19:31:04 8232 1

原创 LeetCode 216 Combination Sum III(Backtracking)(*)

翻译找出所有的k个数字相加得到数字n的组合,只有1到9的数字可以被使用,并且每个组合间需要是不同的数字集。原文Find all possible combinations of k numbers that add up to a number n, given that only numbers...

2016-07-17 22:21:23 1600 0

原创 LeetCode 304 Range Sum Query 2D - Immutable(范围求和2D - 不可变)

翻译给定一个2D矩阵matrix,找出其中以左上角(row1,col1)和右下角(row2,col2)定义的矩形边界的元素的和。(译者注:包括边界)以上矩形 范围内的元素和为8。例如, 给定 matrix = [ [3, 0, 1, 4, 2], [5, 6, 3, 2, 1], ...

2016-06-29 15:33:39 1702 0

原创 LeetCode 307 Range Sum Query - Mutable(范围和查询-可变)

翻译给定一个整型数组nums,找出在索引i到j之间的元素的和(i <= j),包括i 和 j。函数update(i, val)用于修改在索引i的元素为val。例如, 给定nums = [1, 3, 5]sumRange(0, 2) -> 9 update(1, 2) sumRan...

2016-06-29 12:37:14 2423 0

原创 LeetCode 274 H-Index (H索引)

翻译给定一个研究者的引用数(每个引用都是非负数)的数组,写一个函数用于计算研究者的h索引。根据维基百科对于h-index的定义:“一个科学家有索引h,如果他或他的N篇论文至少存在h个相互引用,而且其他的N-h篇论文相互引用次数不高于h。例如,给定citations = [3, 0, 6, 1, 5...

2016-06-24 15:24:17 2052 0

原创 LeetCode 166 Fraction to Recurring Decimal (从分数到循环小数)(*)

翻译给定两个整数,用于表示一个分数的分子和分母,以字符串格式返回这个分数。如果分数部分是重复的,将重复的部分用括号括起来。例如,给定numerator = 1,denominator = 2,返回“0.5”。 给定numerator = 2,denominator = 1,返回“2”。 给定num...

2016-06-21 12:47:22 3835 0

原创 LeetCode 208 Implement Trie (Prefix Tree)(实现前缀树)(*)

翻译实现一个包含insert,search和startsWith方法的前缀树。备注: 你可以假定所有的输入只包含小写字母a-z。原文Implement a trie with insert, search, and startsWith methods.Note: You may assume t...

2016-06-09 11:22:28 2493 0

原创 LeetCode 141 Linked List Cycle(循环链表)(HashSet/Linked List)

翻译给定一个链表,判断是否有一个循环在其中。跟进: 你可以不用额外的空间来解决这个问题吗?原文Given a linked list, determine if it has a cycle in it.Follow up: Can you solve it without using extra...

2016-06-06 22:57:49 2385 0

原创 Ubuntu 入门(2):配置 Java 环境变量 及 设置默认JDK

下载官网的下载地址:Java SE Development Kit 8 Downloads 认准自己所需的版本后开始下载就好了,本文后面以“jdk-8u91-linux-x64.tar.gz”为例。配置1下载好后默认放在Downloads文件夹即可。使用终端进入Downloads文件夹后,输入以下...

2016-06-04 14:58:43 2378 0

原创 VMware虚拟机错误提示:锁定文件失败 打不开磁盘 未能启动虚拟机

背景突然Ubuntu就崩了,再重启就一直失败。提示锁定文件失败,打不开磁盘”XXXXX“或它所依赖的某个快照磁盘。虚拟机无法启动了。原因虚拟磁盘(也就是vmdk)会有一个磁盘保护机制,这也是为了防止出现有多个虚拟机同时访问一个虚拟磁盘的情况,因为这可能会导致性能减弱甚至是数据丢失。所以每次启动虚拟...

2016-06-01 22:17:03 4162 3

原创 LeetCode 91 Decode Ways(编码方式)(*)

原文A message containing letters from A-Z is being encoded to numbers the following mapping:'A' -> 1 'B' -> 2 ... 'Z...

2016-05-07 21:36:03 3820 0

原创 LeetCode 92 Decode Ways

原文A message containing letters from A-Z is being encoded to numbers the following mapping:'A' -> 1 'B' -> 2 ... 'Z...

2016-05-07 17:47:39 3232 0

提示
确定要删除当前文章?
取消 删除