当你的才华还撑不起你的梦想时,你只能一直前进!
摘要: 最近也是终于开启了代码编写之旅,我只能默默地说一句,写代码的感觉,简直不能再爽! 不过也由于 git 的分支管理蛋疼懵逼很久,所以必须记录以及和大家分享一下本次坑爹的旅行。 写在前面 每个公司相比都有自己的 git 分支管理规范,在项目组中开发人员较多的时候,这个就显得尤为重要。所以我们必须得掌握 阅读全文
posted @ 2018-09-04 14:08 南尘 阅读(11074) 评论(12) 推荐(0) 编辑
摘要: Kotlin 被作为 Google 官方语言也有一年多了,但除了刚宣布那个月极度火爆以外,后面生活又回归了平静。不少小伙伴紧跟 Google 爸爸的步伐,也对 Kotlin 有了或多或少的了解,GitHub 上也有了相当一部分的 Kotlin 开源项目。 但或许是后知后觉,依然还是有相当一部分小伙伴 阅读全文
posted @ 2018-08-30 17:28 南尘 阅读(1149) 评论(1) 推荐(1) 编辑
摘要: 说说入职两日的感受 伙计们,做好准备吧,南尘最近一定不可能日更的,不过不保证后面还会像现在这样熟悉架构熟悉代码到极度困,然后就想到我亲爱的朋友们,然后再和你们吹会儿逼。 前面给大家讲过,选择了待遇相对偏低的咕咚,主要是因为一面的面试官,给了我很强的震撼力,让我如同找到了同路人:同样在为代码质量而疯狂 阅读全文
posted @ 2018-08-22 08:44 南尘 阅读(5792) 评论(20) 推荐(24) 编辑
摘要: 面试 19:输出数组中出现次数超过一半的数字(剑指 Offer 26 题) 上一篇推文给大家留下的习题来自于《剑指 Offer》第 29 题:数组中超过一半的数字,不知道各位去思考了么? 面试题:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字并输出。比如 {1,2,3,2,2,2,1} 阅读全文
posted @ 2018-08-02 09:57 南尘 阅读(1453) 评论(0) 推荐(0) 编辑
摘要: 面试 18:复杂链表的复制(剑指 Offer 第 26 题) 在上一篇推文中,我们留下的习题是来自《剑指 Offer》 的面试题 26:复杂链表的复制。 请实现复杂链表的复制,在复杂链表中,每个结点除了 next 指针指向下一个结点外,还有一个 sibling 指向链表中的任意结点或者 NULL。比 阅读全文
posted @ 2018-08-01 08:51 南尘 阅读(969) 评论(1) 推荐(0) 编辑
摘要: 我们今天继续来看看周五留下的习题: 面试题:输入两个整数序列,第一个序列表示栈的压入顺序,请判断二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如:压入序列为{1,2,3,4,5},那{4,5,3,2,1} 就是该栈的弹出顺序,而{4,3,5,1,2} 明显就不符合要求; 这道题还是比 阅读全文
posted @ 2018-07-30 09:08 南尘 阅读(668) 评论(0) 推荐(2) 编辑
摘要: 面试 15:顺时针从外往里打印数字 题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印每一个数字。例如输入: {{1,2,3}, {4,5,6}, {7,8,9}} 则依次打印数字为 1、2、3、6、9、8、7、4、5 这是昨天最后给大家留下的题目,相信大家也有去思考如何处理这道题目了。 初看这 阅读全文
posted @ 2018-07-27 08:42 南尘 阅读(1461) 评论(3) 推荐(2) 编辑
摘要: 终于又回到了我们的算法习题讲解了。南尘发现最近文章阅读量明显比以前少了不少,就上门请教小伙伴原因。他们都说作为一名 Android 应用开发工程师,实在是在工作中没有接触到算法。做技术这个东西,学习了还是得练,不练过几天一定会忘掉。 不过想必大家读南尘的文章也是深有所感,基本都是站在一个极其普通的程 阅读全文
posted @ 2018-07-25 09:24 南尘 阅读(434) 评论(0) 推荐(3) 编辑
摘要: 终于轮到我们排序算法中的王牌登场了。 快速排序由于排序效率在同为 O(nlogn) 的几种排序方法中效率最高,因此经常被采用。再加上快速排序思想——分治法也确实非常实用,所以 在各大厂的面试习题中,快排总是最耀眼的那个。要是你会的排序算法中没有快速排序,我想你还是偷偷去学好它,再去向大厂砸简历。 事 阅读全文
posted @ 2018-07-23 13:25 南尘 阅读(1250) 评论(3) 推荐(2) 编辑
摘要: 昨天给大家讲解了 Java 玩转冒泡排序,大家一定觉得并没有什么难度吧,不知道大佬们玩转了吗?不知道大家有没有多加思考,实际上在我们最后的一种思路上,还可以再继续改进。 我们先看看昨天最终版本的代码。 public class Test09 { private static void swap(in 阅读全文
posted @ 2018-07-17 08:54 南尘 阅读(720) 评论(1) 推荐(8) 编辑
摘要: 面试 9:用 Java 实现冒泡排序 南尘的朋友们,新的一周好,原本打算继续讲链表考点算法的,这里姑且是卡一段。虽然在我们 Android 开发中,很少涉及到排序算法,因为基本官方都帮我们封装好了,但排序算法也是非常重要的,在面试中 归并排序 和 快速排序 一直为高频考点,但在学习它们之前,我们必须 阅读全文
posted @ 2018-07-16 08:55 南尘 阅读(1333) 评论(0) 推荐(0) 编辑
摘要: 昨天在最后给大家留了拓展题,不知道大家有没有思考完成,其实南尘说有巨坑是吓大家的啦,实际上也没什么。我们来继续看看昨天这个拓展题。 面试题:给定单链表的头结点,删除单链表的倒数第 k 个结点。 前面的文章见链接:面试 7:面试常见的链表算法捷径(一) 这个题和前面的文章中增加了一个操作,除了找出来这 阅读全文
posted @ 2018-07-13 08:56 南尘 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 面试 7:面试常见的链表类算法捷径 链表是我们数据结构面试中比较容易出错的问题,所以很多面试官总喜欢在这上面下功夫,为了避免出错,我们最好先进行全面的分析。在实际软件开发周期中,设计的时间通常不会比编码的时间短,在面试的时候我们不要着急于写代码,而是一开始仔细分析和设计,这将给面试官留下一个很好的印 阅读全文
posted @ 2018-07-12 08:58 南尘 阅读(1751) 评论(7) 推荐(9) 编辑
摘要: 今天给大家带来的是 《剑指 Offer》习题:调整数组顺序使奇数位于偶数前面,纯 Java 实现希望大家多加思考。 面试题:输入一个整型数组,实现一个函数来调整该数组中的数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分,希望时间复杂度尽量小。 看到这道题,想必大多数人都是能一下 阅读全文
posted @ 2018-07-11 10:04 南尘 阅读(1396) 评论(3) 推荐(4) 编辑
摘要: 我们在处理一道编程面试题的时候,通常除了注意代码规范以外,千万要记得自己心中模拟一个单元测试。主要通过三方面来处理。 功能性测试 边界值测试 负面性测试 不管如何,一定要保证自己代码考虑的全面,而不要简单地猜想用户的输入一定是正确的,只是去实现功能。通常你编写一个能接受住考验的代码,会让面试官对你刮 阅读全文
posted @ 2018-07-10 10:01 南尘 阅读(2338) 评论(1) 推荐(4) 编辑
摘要: 面试:老师讲的递归解决斐波那契数列真的好吗 在搞「模拟面试」的日子,我发现大家普遍有个问题就是,感觉自己的能力总是到了瓶颈期,写了好几年代码,感觉只是会的框架比以前多了而已。去大公司面试,屡战屡败,问失败原因,大多数人的答案都是,在三面数据结构与算法的时候,直接就挂了。 而不少人表示,我数据结构与算 阅读全文
posted @ 2018-07-06 09:56 南尘 阅读(1354) 评论(2) 推荐(7) 编辑
摘要: 编辑文章 在算法面试中,面试官总是喜欢围绕链表、排序、二叉树、二分查找来做文章,而大多数人都可以跟着专业的书籍来做到倒背如流。而面试官并不希望招收的是一位记忆功底很好,但不会活学活用的程序员。所以学会数学建模和分析问题,并用合理的算法或数据结构来解决问题相当重要。 面试题:打印出旋转数组的最小数字 阅读全文
posted @ 2018-07-05 08:49 南尘 阅读(3983) 评论(15) 推荐(4) 编辑
摘要: 昨天的 Java 实现单例模式 中,我们的双重检验锁机制因为指令重排序问题而引入了 volatile 关键字,不少朋友问我,到底为啥要加 volatile 这个关键字呀,而它,到底又有什么神奇的作用呢? 对 volatile 这个关键字,在昨天的讲解中我们简单说了一下:被 volatile 修饰的共 阅读全文
posted @ 2018-07-04 14:10 南尘 阅读(1315) 评论(0) 推荐(1) 编辑
摘要: 面试:用 Java 实现一个 Singleton 模式 面试系列更新后,终于迎来了我们的第一期,我们也将贴近《剑指 Offer》的题目给大家带来 Java 的讲解,个人还是非常推荐《剑指 Offer》作为面试必刷的书籍的,这不,再一次把这本书分享给大家,PDF 版本在公众号后台回复「剑指Offer」 阅读全文
posted @ 2018-07-03 12:12 南尘 阅读(2469) 评论(0) 推荐(5) 编辑
摘要: 面试场景 平时开发用到其他线程吗?都是如何处理的? 基本都用 RxJava 的线程调度切换,嗯对,就是那个 observeOn 和 subscribeOn 可以直接处理,比如网络操作,RxJava 提供了一个叫 io 线程的处理。 在 RxJava 的广泛使用之前,有使用过其他操作方式吗?比如 Ha 阅读全文
posted @ 2018-03-29 09:03 南尘 阅读(2815) 评论(2) 推荐(2) 编辑
摘要: 写在前面 关注我的小伙伴可能都知道,我是一个 Android 开发工程师,目前在 GitHub 有着约 7k 的 Star 量,在各大博客网站访问量也是破百万大关,而且一直以来都被不少粉丝奉为「技术大佬」。其实并不是这样,我在 Android 技术领域,其实是一个十足的菜鸡,只是花了不少的时间在写作 阅读全文
posted @ 2018-03-05 13:38 南尘 阅读(7210) 评论(40) 推荐(47) 编辑
摘要: 前途比现金重要,公司带给你的成长,才是你最宝贵的财富。 —— 题记 写在前面 大家周末愉快,完全没想到上一篇白话文 "我为什么想离职?" 看起来还挺受欢迎,虽然写的不好,真的不好,哈哈,不过我会好好努力提升自己的文笔的,争取给大家带来赏心悦目的文字分享。 怎么最近都没写纯技术文章了? 这个问题,很多 阅读全文
posted @ 2018-02-04 16:46 南尘 阅读(2621) 评论(31) 推荐(18) 编辑
摘要: 写在前面 本周六晚上面试了一位来自杭州的 17 年应届毕业生,来自计算机科学学院软件工程专业,也是一位非常爱学上进的小伙伴,在微信上约了我无数次「模拟面试」。因为非常着急着找工作,而前面三家面试也是均以失败告终,所以一阵纠结下来,还是选择了先帮帮他。 首先从交流态度上,这是一位态度非常好的小伙伴,可 阅读全文
posted @ 2018-01-30 09:03 南尘 阅读(487) 评论(0) 推荐(0) 编辑
摘要: 写在前面 还记得上周我发起的福利活动吗?原文在这: "给 Android 开发者的福利:免费模拟面试" 。 模拟面试活动反馈 没错,原谅我每篇文章可能都会加上这个前缀,这是我公众号最新推出的福利,旨在帮助到更多的人。 虽然这偏重于给活动参与者的面试报告,但纯反馈建议,也许一样适合你! 为什么发起这个 阅读全文
posted @ 2018-01-15 14:20 南尘 阅读(384) 评论(0) 推荐(2) 编辑
摘要: 写在前面 大家好,我是「南尘」,一个爱分享爱学习的 Android 技术控。目前在 "GitHub" 上有着差不多 6k 的个人项目 Star 数,之前也为其他开源库贡献过大量的源码。在各大博客网站上也有着一定量的读者,是个不折不扣的 Android 技术控,目前在运营公众号「nanchen」。 做 阅读全文
posted @ 2018-01-11 16:51 南尘 阅读(2867) 评论(15) 推荐(21) 编辑

写不完的矫情,做不完的开源

点击进入我的GitHub页
南 尘
主 页
优美钢琴曲合集-南尘.mp3                    感谢您阅读我的博客,如果您现在工作、学习累了或者疲惫了,不妨聆听一下音乐,它能够减轻你的疲劳,还能够带给您一种舒适愉悦的心情。(样式取自博客园-欲泪成雪)