- 博客(23)
- 资源 (2)
- 收藏
- 关注
原创 罗马数字转整数
罗马数字包含以下七种字符:I, V, X, L,C,D 和 M。字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为两个...
2018-08-28 10:29:51 192
原创 3的幂
给定一个整数,写一个函数来判断它是否是 3 的幂次方。示例 1:输入: 27 输出: true 示例 2:输入: 0 输出: false 示例 3:输入: 9 输出: true 示例 4:输入: 45 输出: falseclass Solution { public boolean isPowerOfThree(int n) { if (...
2018-08-28 09:29:58 376
原创 计数质数 -leetcode java
统计所有小于非负整数 n 的质数的数量。示例:输入: 10 输出: 4 解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。思路: 埃拉托斯特尼筛法,简称埃氏筛或爱氏筛,是一种由希腊数学家埃拉托斯特尼所提出的一种简单检定素数的算法: 要得到自然数n以内的全部素数,必须把不大于根号n的所有素数的倍数剔除,剩下的就是素数。 Java代码:c...
2018-08-28 08:37:21 652
原创 实现strStr()-leetcode
实现 strStr() 函数。给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。示例 1:输入: haystack = “hello”, needle = “ll” 输出: 2 示例 2:输入: haystack = “aaaaa”, needle ...
2018-08-27 23:19:31 137
原创 有效的字母异位词
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。示例 1:输入: s = “anagram”, t = “nagaram” 输出: true 示例 2:输入: s = “rat”, t = “car” 输出: false 说明: 你可以假设字符串只包含小写字母。进阶: 如果输入字符串包含 unicode 字符怎么办?你能否调整你的解法...
2018-08-27 10:23:21 363
原创 字符串中的第一个唯一字符
给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = “leetcode” 返回 0.s = “loveleetcode”, 返回 2.注意事项:您可以假定该字符串只包含小写字母。public class Solution { public static void main(String[] args) { ...
2018-08-27 09:46:21 171
原创 颠倒整数
给定一个 32 位有符号整数,将整数中的数字进行反转。示例 1:输入: 123 输出: 321 示例 2:输入: -123 输出: -321 示例 3:输入: 120 输出: 21 注意:假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。class Solution {...
2018-08-27 08:43:06 141
原创 反转字符串
编写一个函数,其作用是将输入的字符串反转过来。示例 1:输入: “hello” 输出: “olleh” 示例 2:输入: “A man, a plan, a canal: Panama” 输出: “amanaP :lanac a ,nalp a ,nam A”class Solution { public String reverseString(String s) ...
2018-08-27 08:41:45 357
原创 MepReduce架构及原理
1. MapReduce 定义 Hadoop中的MepReduce是一个使用简单的软件框架,基于它写出来的程序能运行在由上千个机器组成的大型集群上,并以一种可靠容错并行处理TB级别的数据集。2.MepReduce特点 1)MepReduce易于编程 它简单的实现一些接口,就可以完成一个分布式程序。这个分布式程序可以分布到大量的廉价PC上运行。也就是说你写一个分布式...
2018-08-17 00:38:53 927
原创 熟练掌握HDFS的Shell访问
HDFS设计的主要目的是对海量数据进行存储,也就是说在其上能够存储很大量文件(可以存储TB级的文件)。HDFS将这些文件分割之后,存储在不同的DataNode上, HDFS 提供了两种访问接口:Shell接口和Java API 接口,对HDFS里面的文件进行操作,具体每个Block放在哪台DataNode上面,对于开发者来说是透明的。下面将介绍通过Shell接口对HDFS进行操作,HDFS处理...
2018-08-12 16:45:09 831
原创 验证二叉搜索树
题目:给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。 节点的右子树只包含大于当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 示例 1:输入: 2 / \ 1 3 输出: true 示例 2:输入: 5 / \ 1 4 ...
2018-08-12 10:02:13 787
原创 二叉树的最大深度
Given a binary tree, find its maximum depth.The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.阶梯思路:对于这种题目最简单的方法就是递归操作了代码:/** ...
2018-08-11 19:58:25 132
原创 回文链表
请判断一个链表是否为回文链表。示例 1:输入: 1->2 输出: false 示例 2:输入: 1->2->2->1 输出: true 进阶: 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?/** * Definition for singly-linked list. * public class ListNode { *...
2018-08-11 11:23:51 306
原创 删除链表的倒数第N个节点
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5. 说明:给定的 n 保证是有效的。进阶:你能尝试使用一趟扫描实现吗?题目大意 删除单链表的倒数第N个结点,注意:输入的N都是合法,...
2018-08-11 11:21:15 495 1
原创 leetcode-141 环形链表(LinkedListCycle)-java
Given a linked list, determine if it has a cycle in it.Follow up: Can you solve it without using extra space?【分析】由于每一个父亲只有可能有一个孩子,故这里的环实际上是指list中某一个节点的孩子同时也是它自己或者他的祖先。 这个问题需要注意几种情况:空链表不成环一个...
2018-08-11 11:16:13 156
原创 Java内存模型
Java内存模型结构分为线程共享区:堆、方法区 线程私有区:虚拟机栈、本地方法栈、程序计数器 堆 堆用于存放对象实例和数组,由于堆是用来存放对象实例,因此堆也是垃圾收集器管理的主要区域,故也称为 GC堆。由于现在的垃圾收集器基本都采用分代收集算法,所以堆的内部结构只包含新生代和老年代 新生代:用于存放刚创建的对象以及年轻的对象,如果对象一直没有被回收,生存得足够长,对象就会被移入老...
2018-07-30 19:33:09 132
原创 java动态代理实现
Java中的代理有静态代理和动态代理,下面我会分别用一个简单的例子来介绍一下静态代理和动态代理代码实现。 1 静态代理 代理接口:UserDao.javapublic interface UserDao { void save();}目标对象:UserDaoImpl.javapublic class UserDaoImpl implements UserDao...
2018-07-30 14:39:19 359 1
原创 Android中的ListView响应item内部按钮点击事件
ListView可以说是我们在实际开发中最常用到的控件了。可以说每一个app都需要用到listview来显示列表,如果我们需要点击listView的不同按钮跳转到不同页面,具体逻辑在重写的onItemClick()方法中实现,这里不多说,不了解listView基本用法的小伙伴们可以去百度一下listView的基本用法,而button的点击事件实现的具体逻辑在重写的onClick()方法中实现。那么当
2017-11-25 16:07:20 15343 4
原创 ListView的原理及性能优化
我们在做app时经常会用到列表显示数据,ListView是我们用的最频繁的控件,下面我将详细讲解ListView的原理及性能优化。首先我们要清楚,要显示一个列表需要3个元素:1.ListView:用来展示列表的view;2.Adapter:用来将数据映射到ListView上;3.data:列表上所要显示的数据,可以是字符串,图片或是基本组件;ListView的工
2017-09-14 11:16:13 534
原创 设计模式-观察者模式
http://ttitfly.iteye.com/blog/152512 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,让他们能够自动更新自己。 观察者模式的组成1.抽象主题角色:把所有对观察者对象的引用保存在一个集合中,每个抽象主题角色都可以有任意数量的观察者。抽象主题提...
2017-09-04 23:13:08 158
原创 Android之Handle的使用原理解析
一,Handle的作用 Handle的作用是什么,其实Handle的作用与intent类似。只不过intent是实现Android四大组件之间的通信,而Handle是实现线程间的通信,例如:当子线程做一个耗时的操作的时候,我们并不知道他什么时候做完,做完了也不知道,那么,我们是不是需要一个东西来通知我们,让我们知道呀,所以说,也就有了Handle的来源,没有Handle这个东西,对我们来说,
2017-08-23 09:22:19 746
原创 Android Tab类型主界面总结
转载至http://blog.csdn.NET/lmj623565791/article/details/24740977 Android现在实现Tab类型的界面方式越来越多,今天就把常见的实现方式给大家来个总结。目前写了:1、传统的ViewPager实现2、FragmentManager+Fragment实现3、ViewPager+FragmentPagerAdapter实现...
2017-08-20 13:57:18 643
原创 Android fragment解析
点击打开链接1、Fragment的产生与介绍Android运行在各种各样的设备中,有小屏幕的手机,超大屏的平板甚至电视。针对屏幕尺寸的差距,很多情况下,都是先针对手机开发一套App,然后拷贝一份,修改布局以适应平板神马超级大屏的。难道无法做到一个App可以同时适应手机和平板么,当然了,必须有啊。Fragment的出现就是为了解决这样的问题。你可以把Fragment当成Activity的一个界...
2017-08-20 11:29:10 170
java并发编程实战pdf(包含示例源码)
2018-07-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人