<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[midnightlight的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/midnightlight</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; midnightlight]]></copyright><item><title><![CDATA[LintCode算法挑战——abc串]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/110799437</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/110799437</guid><author>midnightlight</author><pubDate>Mon, 07 Dec 2020 11:22:45 +0800</pubDate><description><![CDATA[问题描述

有一个字符串集合，所有字符串的长为 n， 只由 ‘a’, ‘b’, ‘c’ 三种字符组成，而且每个字符串中，所有相邻字符都是不同的。
请编写一个程序，返回这个字符串集合中，字典序第 k 小的字符串。
1≤n≤105
1≤k≤1018
如果所有可组成的字符串个数小于 k，返回一个空串。


样例
样例输入:
n = 3
k = 6
样例输出:
"bac"


说明
在样例中，长为 3 的字符串的集合如下：
[“aba”, “abc”, “aca”, “acb”
,“bab”, “bac”, “bc]]></description><category></category></item><item><title><![CDATA[算法挑战记录Ⅱ——Java]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/109789594</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/109789594</guid><author>midnightlight</author><pubDate>Wed, 18 Nov 2020 22:49:55 +0800</pubDate><description><![CDATA[算法挑战记录Ⅱ算法挑战记录Ⅱ——Java11.合法标识符
算法挑战记录Ⅱ——Java

不知不觉挑战数量已经超过了10个，第一篇也已经写了600多行，不好阅读也不好维护，因此开始第二篇的写作。开始于2020-11-18.

第一篇地址 ：算法挑战记录——Java

11.合法标识符
描述

请判断字符串 str 是不是一个合法的标识符。
合法的标识符由字母（A-Z，a-z）、数字（0-9）和下划线组成，并且首字符不能为数字。

样例
输入：str = "123_abc"
输出：false
解释：
虽然 "1]]></description><category></category></item><item><title><![CDATA[算法挑战记录——Python]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/109600382</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/109600382</guid><author>midnightlight</author><pubDate>Tue, 10 Nov 2020 19:39:52 +0800</pubDate><description><![CDATA[记录一下自己的算法挑战记录算法挑战记录——Python旋转字符串挑战尾随零落单的数统计数字移除9丑数 II
算法挑战记录——Python

这里是算法挑战记录的Python版本，flag总是要实现的，描述和思路大多和java版本统一，只是实现的语言为Python，如果想查看Java版本的实现，请看算法挑战记录——Java。于2020-11-10.


旋转字符串挑战
描述


给定一个字符串（以字符数组的形式给出）和一个偏移量，根据偏移量原地旋转字符串(从左向右旋转)。
在数组上原地旋转，使用O(1)的额外]]></description><category></category></item><item><title><![CDATA[算法挑战记录——Java]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/109560682</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/109560682</guid><author>midnightlight</author><pubDate>Sun, 08 Nov 2020 16:11:48 +0800</pubDate><description><![CDATA[记录一下自己的算法挑战记录算法挑战记录旋转字符串挑战
算法挑战记录

最近感觉需要提高一下自己的算法水平，因此开始进行算法挑战训练专题，希望自己能够坚持下来。开始于2020-11-08.

旋转字符串挑战

给定一个字符串（以字符数组的形式给出）和一个偏移量，根据偏移量原地旋转字符串(从左向右旋转)。

在数组上原地旋转，使用O(1)的额外空间
public class Solution {
    /**
     * @param str: An array of char
     * @param ]]></description><category></category></item><item><title><![CDATA[由Android Studio 3.6.4升级到4.0遇到的问题以及解决]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/106522196</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/106522196</guid><author>midnightlight</author><pubDate>Wed, 03 Jun 2020 13:43:50 +0800</pubDate><description><![CDATA[由Android Studio 3.6.4升级到4.0遇到的问题以及解决
1.项目编译问题

gradle版本升级到6.1.1，build Tools升级到4.0.0后
classpath 'com.android.tools.build:gradle:4.0.0
Kotlin项目需要同时修改Kapt版本
kapt_version = "4.0.0"

2.项目爆红

升级的时候不要使用3.6.4或更老的配置，需要重新进行个性化idea配置
如果已经使用了之前的配置，要关闭Android Studio然后把]]></description><category></category></item><item><title><![CDATA[ArrayList和LinkedList区别]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/89216053</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/89216053</guid><author>midnightlight</author><pubDate>Thu, 11 Apr 2019 17:30:55 +0800</pubDate><description><![CDATA[ArrayList和LinkedList区别
由于平时经常使用ArrayList却很少涉及到LinkedList，今天偶然在遍历文件时使用到了LinkedList，因此再次学习了两者的区别，下面先附上遍历文件的代码：
private static void traverFile(File file) {
    LinkedList&lt;File&gt; list = new LinkedLis...]]></description><category></category></item><item><title><![CDATA[组件化开发]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/82629566</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/82629566</guid><author>midnightlight</author><pubDate>Tue, 11 Sep 2018 17:36:47 +0800</pubDate><description><![CDATA[转自： http://blog.youkuaiyun.com/guiying712/article/details/55213884  ，本文出自:【张华洋的博客】



Android组件化项目地址：Android组件化项目AndroidModulePattern

Android组件化之终极方案地址：http://blog.youkuaiyun.com/guiying712/article/details/78057...]]></description><category></category></item><item><title><![CDATA[Android9.0新特性]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/81779848</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/81779848</guid><author>midnightlight</author><pubDate>Fri, 17 Aug 2018 16:37:26 +0800</pubDate><description><![CDATA[转自：https://blog.youkuaiyun.com/hejjunlin/article/details/81489690 

2018年8月7日-凌晨1点，谷歌发布了Android 9.0操作系统，它的名字是Android 9，被命名为Android Pie。让我们看看关于Android 9派你需要知道的一切。

大纲如下：


Android Pie 新特性有哪些？
官方Release Note更...]]></description><category></category></item><item><title><![CDATA[Android5.0，6.0，7.0，8.0新特性整理]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/81779024</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/81779024</guid><author>midnightlight</author><pubDate>Fri, 17 Aug 2018 15:59:22 +0800</pubDate><description><![CDATA[


背景


Android5.0（Android&amp;nbsp;Lollipop）是谷歌公司2014年10月发布的全新安卓系统，至今已经两年多。然而由于国产手机对安卓ROM的深度定制或修改，以及手机厂商、芯片制造商、运营商之间错综复杂的关系，我们更新最新安卓版本往往需要1年左右时间的等待。2015年5月发布了Android6.0（Android
 Marshmallow），2016年8月发布了An...]]></description><category></category></item><item><title><![CDATA[Android系统各个版本系统特性整理（1.1-6.0）]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/81774754</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/81774754</guid><author>midnightlight</author><pubDate>Fri, 17 Aug 2018 11:25:59 +0800</pubDate><description><![CDATA[ 
         
                     
                        

闲暇无事，整理下Android各个版本系统特性，以方便后续查看！

1.&amp;amp;nbsp;Android 1.1　　 &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbs]]></description><category></category></item><item><title><![CDATA[Android平台特性]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/81774490</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/81774490</guid><author>midnightlight</author><pubDate>Fri, 17 Aug 2018 11:14:40 +0800</pubDate><description><![CDATA[
        
                    
                        




Android平台采用了整合的策略思想，包括底层Linux操作系统、中间层的中间件和上层的Java应用程序。下面我把Android的特性及其架构体系结构总结一下。

一、Android的平台特性

　　Android平台有如下特性：

　　1. 应用程序框架支持组件的重用与替换。...]]></description><category></category></item><item><title><![CDATA[递归相关]]></title><link>https://blog.youkuaiyun.com/midnightlight/article/details/81537487</link><guid>https://blog.youkuaiyun.com/midnightlight/article/details/81537487</guid><author>midnightlight</author><pubDate>Thu, 09 Aug 2018 15:24:54 +0800</pubDate><description><![CDATA[
                原作者：书呆子Rico 《递归的内涵与经典应用》&amp;nbsp;http://my.youkuaiyun.com/justloveyou_摘要：　　大师 L. Peter Deutsch 说过：To Iterate is Human, to Recurse, Divine.中文译为：人理解迭代，神理解递归。毋庸置疑地，递归确实是一个奇妙的思维方式。对一些简单的递归问题，我们总是惊...]]></description><category></category></item></channel></rss>