- 博客(559)
- 资源 (19)
- 收藏
- 关注
原创 nomasp 博客导读:Lisp/Emacs、Algorithm、Android
ProfileIntroduction to Blog 您能看到这篇博客导读是我的荣幸,本博客会持续更新,感谢您的支持,欢迎您的关注与留言。博客有多个专栏,分别是关于 Android应用开发 、Windows App开发 、 UWP(通用Windows平台)开发 、 SICP习题解 和 Scheme语言学习 、 算法解析 与 LeetCode等题解 ,而最近会添加的文章将
2015-09-17 12:28:38 16578 20
原创 Android内存泄漏检测工具:LeakCanary
一、简介LeakCanary是一个Square开源的内存泄漏分析工具,如果检测到某个activity有内存泄漏,LeakCanary就会自动显示一个通知。二、如何使用2.1)在app下的build.gradle中加入以下依赖dependencies { debugCompile 'com.squareup.leakcanary:leakcanary-android:...
2018-03-16 15:10:58 5106
原创 【Hexo异常】fatal: in unpopulated submodule '.deploy_git'
今天又重新搞了下hexo,好久不动它居然报了错。这种情况可以先安装下相关的依赖:npm install hexo-deployer-git –save实在不行,就把它删掉,然后重新生成和部署。rm -rf .deploy_githexo ghexo d大功告成!...
2018-03-10 01:23:29 8745
原创 Android RTL 及小语种 适配
一、需要单独适配的原因包括中文、英文、+-等各种符号,都是从左往右显示,而阿拉伯语、波斯语等则是从右往左显示,等等问题都需要进行本地化适配。二、适配须知2.1)RTL语言有以下6种: 阿拉伯语 ar Arbic العربية 波斯语 fa Persian فارسی 希伯来语 iw Hebr...
2018-03-10 01:06:31 13466 1
原创 Android内存泄漏检测工具:LeakCanary
一、简介LeakCanary是一个Square开源的内存泄漏分析工具,如果检测到某个activity有内存泄漏,LeakCanary就会自动显示一个通知。二、如何使用2.1)在app下的build.gradle中加入以下依赖dependencies { debugCompile 'com.squareup.leakcanary:leakcanary-android:...
2018-03-10 00:50:45 5086
原创 Android N DisplayManager服务解析(二)
Android N DisplayManager服务解析PMS(PowerManagerService):负责协调设备上电源管理功能的服务。 DPC(DisplayPowerController):控制屏幕显示相关的电源状态。处理距离传感器、光纤传感器和屏幕关闭时的动画等。这个组件在其他电源管理服务中是独立的,也就是说它不会共享任何状态,而只是通过异步回调来通知其他电源管理模块某些状态已经改变。这个
2017-08-20 17:43:49 7619
原创 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?我来将其保存到墙内。一句话概括:origin是你的系统上对于某个特定的远程(GitHub)仓库的别名。它不是某个仓库的真实属性。当你执
2017-05-05 23:26:47 5687
原创 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 order.Example 1: Input: “Let’s take LeetCode contest”
2017-05-05 21:49:41 6967
原创 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 of min(ai, bi) for all i from 1 to n as large as pos
2017-05-05 21:07:49 8044
原创 【Common Lisp 入门】配置开发环境 in Emacs
安装 Emacssudo apt-get install emacs安装 Common Lisp 环境sudo apt-get install common-lisp-controller安装 Slimesudo apt-get install slime修改 Emacs 配置文件,以支持 Common Lispemacs -nw ~/.emacs.d/user.el(setq inferior-l
2016-12-17 12:37:29 7776
原创 Chrome macOS 快捷键 from Google Support
标签页和窗口快捷键操作快捷键打开新窗口⌘ + n在隐身模式下打开新窗口⌘ + Shift + n打开新的标签页,并跳转到该标签页⌘ + t重新打开最后关闭的标签页,并跳转到该标签页⌘ + Shift + t跳转到下一个打开的标签页⌘ + Option + 向右箭头键跳转到上一个打开的标签页⌘ + Option + 向左箭头键跳转到特定标签页⌘ + 1 到 ⌘ + 8跳转到最后一个标签页⌘ + 9打
2016-11-12 11:28:43 6267
原创 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 n.But for multiples of three it should output “Fizz
2016-10-17 21:40:00 7240
原创 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 and O(1) space?分析一种比较简单的做法,用stack来存储值,充分利用了栈的后进先出的特
2016-09-25 13:12:51 6958
原创 LeetCode 299 Bulls and Cows(公牛和母牛)(HashMap)
翻译你在和朋友们玩一个叫做“公牛和母牛”的游戏:你写下一组数字,然后让你的朋友来猜它。每次你朋友做一个猜测,你根据他的猜测给一个提示:他在数字在值和位置上都猜对的数字,就叫做bulls(公牛),猜对了值但位置不对的数字叫做cows(母牛)。你的朋友将使用各种猜测和提示最终猜出来正确的数字。例如: 你给的秘密数字是:“1807” 朋友的猜测是:“7810”提示:1个公牛和3个母牛。(公牛是8,母牛
2016-09-17 02:07:49 6812 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).Follow up: Could you do this in-place?分析尊重原创,一个很好的
2016-09-05 00:21:17 7270 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 integer array, find the first missing positive integer.Fo
2016-09-04 23:07:17 6064
原创 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 more than ⌊ n/3 ⌋ times. The algorithm should run in li
2016-08-29 21:40:40 6615
原创 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 <= m <= n <= 链表的长度原文Reverse a linked list from position m to n. Do it in-place and in
2016-08-11 23:26:58 7781
原创 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.原文Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct
2016-08-11 20:25:18 7354
原创 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→…→Ln-1→Ln, reorder it to: L0→Ln→L1→Ln-1→L2→Ln-2→…You
2016-08-10 21:41:38 7094
原创 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 matrix filled with elements from 1 to n2 in spiral or
2016-08-07 22:22:30 6901 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 elements (m rows, n columns), return all elements of
2016-08-07 22:02:09 4597 4
原创 LeetCode 73 Set Matrix Zeroes(设矩阵元素为0)(Array)(*)
翻译给定一个mmxnn的矩阵matrix,如果其中一个元素为0,那么将其所在的行和列的元素统统设为0。要求就地计算。跟进:你使用了额外的空间吗?一个直接的解决方案是使用O(mn)O(mn)的空间,但这不是个好主意。 一个简单的改进是使用O(m+n)O(m+n)的空间,但这任然不是最好的解决方案。 你可以设计一个用常量空间的方案吗?原文Given a m x n matrix, if an ele
2016-08-06 23:07:02 2162
原创 如何用Emacs编译C++代码
前言之前做算法题都是在CodeBlocks上写的,为了尽快入门心怡许久的Emacs决定以后都用它来写,而不能仅仅将其作为编辑器。使用C-x C-f来打开/创建文件,写好代码,然后用C-x C-s来保存文件。这是最基本的操作了,比起方向键我更喜欢C-n C-p C-f C-b的方式。其实这篇博客也是我用Emacs写的第一篇。Ok,言归正传。创建文件首先是创建文件,记得指定扩展名,因为这样就可以利用Em
2016-08-06 21:27:28 5179
原创 解决Emacs无法输入中文的问题
根据Fcitx的介绍:当LC_CTYPE为英文时,在Emacs上可能无法使用输入法。好吧,我也遇到了。解决办法很简单:打开下面两个文件并分别在文件结尾添加如下的命令并保存即可。sudo emacs /home/nomasp/.bashrcsudo emacs /etc/environmentLC_CTYPE="zh_CN.utf8"
2016-08-06 21:02:32 6876
原创 LeetCode 289 Game of Life(生命游戏)(Array)
翻译根据维基百科的文章介绍:“Game of Life,简称为Life,是一个被英国数学家John Conway在1970年提出的细胞自动分裂器。”给定一个m x n的空间,每个细胞有一个初始状态live(1)或dead(0)。每个细胞通过下面4种方式和周围的8个邻居交互(垂直、水平、交叉):1,当前细胞为存活状态时,当周围低于2个(不包含2个)存活细胞时, 该细胞变成死亡状态。(模拟生命数量稀少)
2016-08-04 20:55:01 4432
原创 Android 开发之布局细节对比:Gravity相关
好吧,其实本不必写这篇文章,我打算接下来去写源码方面的。之所以写这个,主要是搜了一下网上已有的博客,都是一堆对属性的描述,我只想说,你们能不能上个图啊。<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:o
2016-08-02 22:39:09 1886
原创 Android 开发:如何让App支持RTL模式
前言讲真,好久没写博客了,2016都过了一半了,赶紧重新捡起来。(个人感慨,和内容无关……所谓RTL,顾名思义也就是Right To Left,是一种阿拉伯语、波斯语等情况下从右往左的阅读方式。当所开发的App等面向海外用户时需要做这个适配。从Android 4.2开始支持原生的RTL模式,对此之前的版本我也不想多做说明,这些老版本要是还支持那Android碎片化就没完没了了。正文如何查看效果首先
2016-08-01 16:57:56 2702
原创 Android 开发之布局细节对比:RTL模式
前言讲真,好久没写博客了,2016都过了一半了,赶紧重新捡起来。(个人感慨,和内容无关……所谓RTL,顾名思义也就是Right To Left,是一种阿拉伯语、波斯语等情况下从右往左的阅读方式。当所开发的App等面向海外用户时需要做这个适配。从Android 4.2开始支持原生的RTL模式,对此之前的版本我也不想多做说明,这些老版本要是还支持那Android碎片化就没完没了了。正文如何查看效果首先
2016-07-30 19:31:04 10579 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 from 1 to 9 can be used and each combination should
2016-07-17 22:21:23 1988
原创 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], [1, 2, 0, 1, 5], [4, 1, 0, 1, 7], [1, 0, 3,
2016-06-29 15:33:39 2177
原创 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) sumRange(0, 2) -> 8备注: 该数组只能被update函数修改。 你可以假设update和sumRange函
2016-06-29 12:37:14 2952
原创 LeetCode 274 H-Index (H索引)
翻译给定一个研究者的引用数(每个引用都是非负数)的数组,写一个函数用于计算研究者的h索引。根据维基百科对于h-index的定义:“一个科学家有索引h,如果他或他的N篇论文至少存在h个相互引用,而且其他的N-h篇论文相互引用次数不高于h。例如,给定citations = [3, 0, 6, 1, 5],这意味着研究者总共有5篇论文,而且每一篇论文分别收到3、0、6、1、5次相互引用。因为研究者有3篇论
2016-06-24 15:24:17 12625
原创 LeetCode 166 Fraction to Recurring Decimal (从分数到循环小数)(*)
翻译给定两个整数,用于表示一个分数的分子和分母,以字符串格式返回这个分数。如果分数部分是重复的,将重复的部分用括号括起来。例如,给定numerator = 1,denominator = 2,返回“0.5”。给定numerator = 2,denominator = 1,返回“2”。给定numerator = 2,denominator = 3,返回“0.(6)”。原文Given two int
2016-06-21 12:47:22 4632
原创 LeetCode 208 Implement Trie (Prefix Tree)(实现前缀树)(*)
翻译实现一个包含insert,search和startsWith方法的前缀树。备注:你可以假定所有的输入只包含小写字母a-z。原文Implement a trie with insert, search, and startsWith methods.Note:You may assume that all inputs are consist of lowercase letters a-z.
2016-06-09 11:22:28 3007
原创 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 space?分析解决方案 1 哈希表有个效率不太高的方法,那就是在遍历这个链表的时候看看是否有某个节点
2016-06-06 22:57:49 2888
原创 Ubuntu 入门(2):配置 Java 环境变量 及 设置默认JDK
下载官网的下载地址:Java SE Development Kit 8 Downloads 认准自己所需的版本后开始下载就好了,本文后面以“jdk-8u91-linux-x64.tar.gz”为例。配置1下载好后默认放在Downloads文件夹即可。使用终端进入Downloads文件夹后,输入以下命令进行解压。tar -xf jdk-8u91-linux-x64.tar.gz2然后将其copy到指定
2016-06-04 14:58:43 3015
原创 VMware虚拟机错误提示:锁定文件失败 打不开磁盘 未能启动虚拟机
背景突然Ubuntu就崩了,再重启就一直失败。提示锁定文件失败,打不开磁盘”XXXXX“或它所依赖的某个快照磁盘。虚拟机无法启动了。原因虚拟磁盘(也就是vmdk)会有一个磁盘保护机制,这也是为了防止出现有多个虚拟机同时访问一个虚拟磁盘的情况,因为这可能会导致性能减弱甚至是数据丢失。所以每次启动虚拟机的时候都会使用扩展名为.lck的文件来对虚拟磁盘进行锁定保护,当虚拟机安全关闭时这个文件就被删除掉了。
2016-06-01 22:17:03 5461 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' -> 26Given an encoded message containing digits, determine the total number of ways t
2016-05-07 21:36:03 4198
原创 LeetCode 92 Decode Ways
原文A message containing letters from A-Z is being encoded to numbers the following mapping:'A' -> 1'B' -> 2...'Z' -> 26Given an encoded message containing digits, determine the total number of ways t
2016-05-07 17:47:39 3528
flux小工具
2015-05-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人