- 博客(12)
- 问答 (2)
- 收藏
- 关注
原创 Git常用指令
push代码git initgit add README.mdgit commit -m "first commit"git remote add origin git@github.com:yanfuchang/gg.gitgit push -u origin master分支管理//创建分支git branch name//列出分支git branch//切换到分支git chec
2017-07-16 23:07:59
271
原创 二维数组找数
问题描述在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。问题分析我先从左下角开始,如果当前数比 key 小,则 column++ ,当前数比 key 大,则 row– private static boolean findKeyNum1(int[][] array,int ke
2016-11-01 20:15:05
338
原创 【剑指offer】把一个数组分为两部分
问题描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分解题思路我们可以设置两个指针 lo,hi,分别从头部向尾部移动,从尾部向头部移动,当 a[lo] 为偶数,并且 a[hi] 为奇数时,将他们交换;这种解法时间复杂度 为 O(n ); private static void reOrderArray2(int[] a
2016-10-21 15:47:14
1589
原创 数值的整数次方(求幂)
问题描述给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。解答这个问题普通方法循环exponent次就可以得出答案,时间复杂度为O(n) .进阶方法我们可以这样做: n为偶数,a^n=a^n/2*a^n/2;n为奇数,a^n=(a^(n-1)/2)*(a^(n-1/2))*a 时间复杂度O(logn)非递归写法: priv
2016-10-20 19:52:20
686
原创 字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”
方法1 private static String LeftRotateString1(String str,int n) { if(str.length() == 0||str == null || n < 0) return str; n = n % str.length(); return str.substring(n) + str.su
2016-10-18 18:06:34
1022
原创 栈的压入、弹出序列
问题输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。 例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。 (注意:这两个序列的长度是相等的)解法我们可以用一个辅助栈去模拟进栈出栈,我们每压入一个数,用栈顶元素与出栈数组 B[i] 去
2016-10-14 22:27:44
253
原创 Comparable 与 Comparator 的区别
为了方便实例的排序,我们常常使用到 Comparable<> 或者 Comparator<> 这两个接口,这两个看似很相似,其实是有很大区别的Comparable这个接口的位置为 java.lang.Comparable ,如果一个类实现的 这个接口,这个类的实例就具备与同一个类的其它实例的比较能力。我们需要实现 Comparable 接口中的 int compareTo(Object o1)
2016-10-14 17:14:10
314
原创 数组中有两个出现一次的数字,其他数字都出现两次,找出这两个数字
方法1如果一个数组中只有一个数字是不同的,那么将整个数组亦或一遍,得到的就是那个不同的数;例如a[0] ^ a[2] ^ …^a[n] = a[m]- - - - a[m]就是那个不同的数;给予这个思想,可以先遍历数组,将每个数亦或一遍,得到的数n就是那两个不同的数亦或的结果;再找到n的最右边第一个1的位置index,那么不同的那两个数的index位置的数肯定不同,所以将真个数组分成两部分;
2016-10-13 21:48:40
627
原创 Fragment学习笔记
fragment是什么fragment故名思意是碎片的意思,fragment必须依附在activity上,一个activity可以由多个fragment组成,fragment就相当于一个依附在activity上层的一个子布局,它可以加载自己的布局文件,activity可以动态地加载,替换,移除,隐藏,显示fragmentfragment生命周期fragment有自己的生命周期,但它的生命周期依赖于它
2016-09-16 10:36:01
352
原创 LayoutInflater学习笔记
在使用自定义listView和viewAdapter的时候使用到了LayoutInflater,现在简单记录一下LayoutInflater的作用LayoutInflater是布局填充器,例如我们需要把主布局中添加一个view,就可以使用LayoutInflater加载view所在的view.xml文件,然后添加到主布局中获取LayoutInflater的三种方式1.LayoutInflater l
2016-09-11 11:16:28
249
原创 刷题的方法
1.读懂题目含义,了解要求的输入与输出2.讲解算法(非实现),依据算法选择数据结构3.代码实现4.找数据验证算法正确性5.分析算法时间空间复杂度
2016-09-10 11:40:07
450
原创 在不同的Activity之间传递数据
使用Intent传递数据简单的数据类型(int String short Boolean )等或者是可序列化的对象,通常使用Intent,通过Intent.putExtra()进行数据传递,然后在目标Activity中通过使用getXxx()方法获取数据,例如getInt() getString()等。 例如:@Override public void onClick(View view)
2016-07-31 02:08:08
887
空空如也
android系统是如何检测锁屏密码是否输入正确的?
2015-12-31
android系统在解锁屏幕的时候密码输入错误系统会有广播发出吗?
2015-11-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人