自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

转载 join和split的常用使用方法

python join 和 split方法的使用,join用来连接字符串,split恰好相反,拆分字符串的。1.join用法示例 >>>li = ['my','name','is','bob'] >>>' '.join(li) 'my name is bob'  >>>'_'.join(li) 'my_name_is_bob'  >>> s = ['my','name','is','bob']

2015-11-30 20:25:01 844

原创 Fragment 生命周期

切换到Fragment(第一次)onAttachonCreateonCreateViewonActivityCreatedonStartonResume屏幕熄灭onPauseonSaveInstanceStateonStop屏幕解锁onStartonResume切

2015-11-23 11:15:28 563

转载 Activity的生命周期

Activity生命周期的回调方法://创建Activitypublic void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); }//Activity快要变成可见的 @Override protected void onStart() {

2015-11-22 17:22:20 503

转载 堆排序 (Heap Sort)

2. 什么是堆?堆(二叉堆)可以视为一棵完全的二叉树,完全二叉树的一个“优秀”的性质是,除了最底层之外,每一层都是满的,这使得堆可以利用数组来表示(普通的一般的二叉树通常用链表作为基本容器表示),每一个结点对应数组中的一个元素。如下图,是一个堆和数组的相互关系对于给定的某个结点的下标 i,可以很容易的计算出这个结点的父结点、孩子结点的下标:Par

2015-11-22 12:02:11 621

转载 经典排序算法总结与实现

经典排序算法在面试中占有很大的比重,也是基础,为了未雨绸缪,在寒假里整理并用Python实现了七大经典排序算法,包括冒泡排序,插入排序,选择排序,希尔排序,归并排序,快速排序,堆排序。希望能帮助到有需要的同学。之所以用Python实现,主要是因为它更接近伪代码,能用更少的代码实现算法,更利于理解。本篇博客所有排序实现均默认从小到大。一、冒泡排序 BubbleSort介绍:

2015-11-22 10:50:42 441

转载 python 迭代器

3. 迭代器3.1. 迭代器(Iterator)概述迭代器是访问集合内元素的一种方式。迭代器对象从集合的第一个元素开始访问,直到所有的元素都被访问一遍后结束。迭代器不能回退,只能往前进行迭代。这并不是什么很大的缺点,因为人们几乎不需要在迭代途中进行回退操作。迭代器也不是线程安全的,在多线程环境中对可变集合使用迭代器是一个危险的操作。但如果小心谨慎,或者干脆贯彻函数式

2015-11-21 11:37:23 820

转载 Java多线程同步与synchronized

为什么需要同步多线程?线程的同步是指让多个运行的线程在一起良好地协作,达到让多线程按要求合理地占用释放资源。我们采用Java中的同步代码块和同步方法达到这样的目的。比如这样的解决多线程无固定序执行的问题:public class TwoThreadTest { public static void main(String[] args) { Thre

2015-11-20 20:23:14 593

转载 LRU缓存实现(Java)

LRU Cache的LinkedHashMap实现LRU Cache的链表+HashMap实现LinkedHashMap的FIFO实现调用示例LRU是Least Recently Used 的缩写,翻译过来就是“最近最少使用”,LRU缓存就是使用这种原理实现,简单的说就是缓存一定量的数据,当超过设定的阈值时就把一些过期的数据删除掉,比如我们缓存10000条数据,当数据小于10000

2015-11-20 16:02:18 442

转载 LinkedHashMap源码分析与LRU实现

LinkedHashMap可认为是哈希表和链接列表综合实现,并允许使用null值和null键。LinkedHashMap实现与HashMap的不同之处在于,LinkedHashMap维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,该迭代顺序可以是插入顺序或者是访问顺序。 LinkedHashMap的实现不是同步的。如果多个线程同时访问LinkedHashMap,而其中至少一个线程

2015-11-20 15:28:30 569

转载 LinkedHashMap 的实现原理

LinkedHashMap 概述HashMap 是无序的,HashMap 在 put 的时候是根据 key 的 hashcode 进行 hash 然后放入对应的地方。所以在按照一定顺序 put 进 HashMap 中,然后遍历出 HashMap 的顺序跟 put 的顺序不同(除非在 put 的时候 key 已经按照 hashcode 排序号了,这种几率非常小)JAVA 在 JD

2015-11-20 11:35:58 518

转载 Hashtable原理解析

有两个类都提供了一个多种用途的hashTable机制,他们都可以将可以key和value结合起来构成键值对通过put(key,value)方法保存起来,然后通过get(key)方法获取相对应的value值。一个是前面提到的HashMap,还有一个就是马上要讲解的HashTable。对于HashTable而言,它在很大程度上和HashMap的实现差不多,如果我们对HashMap比较了解的话,对Has

2015-11-19 23:09:52 462

转载 HashMap的实现原理

1.    HashMap概述:   HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 2.    HashMap的数据结构:   在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本

2015-11-19 20:41:37 359

转载 HashMap vs. TreeMap vs. Hashtable vs. LinkedHashMap

Map是最重要的数据结构。这篇文章中,我会带你们看看HashMap, TreeMap, HashTable和LinkedHashMap的区别。1. Map概览Java SE中有四种常见的Map实现——HashMap, TreeMap, Hashtable和LinkedHashMap。如果我们使用一句话来分别概括它们的特点,就是:HashMap就是一张hash表,键和值都

2015-11-19 12:30:41 588

转载 Python Queue模块详解

Python中,队列是线程间最常用的交换数据的形式。Queue模块是提供队列操作的模块,虽然简单易用,但是不小心的话,还是会出现一些意外。创建一个“队列”对象import Queueq = Queue.Queue(maxsize = 10)Queue.Queue类即是一个队列的同步实现。队列长度可为无限或者有限。可通过Queue的构造函数的可选参数maxsize来设定队列长度。

2015-11-19 11:46:17 3575

转载 python 双端队列 deque

什么是双端队列deque,全名double-ended queue)是一种具有队列和栈的性质的数据结构。双端队列中的元素可以从两端弹出,其限定插入和删除操作在表的两端进行。优点  append和pop操作是O(1),高效率。适用操作  1·类似与unix下的tail函数。  2·从右边加入,从左边弹出的操作下面简单的介绍一下python中双端

2015-11-19 11:40:58 4046

转载 红黑树

1. 简介红黑树是一种自平衡二叉查找树。它的统计性能要好于平衡二叉树(AVL树),因此,红黑树在很多地方都有应用。在C++ STL中,很多部分(目前包括set, multiset, map, multimap)应用了红黑树的变体(SGI STL中的红黑树有一些变化,这些修改提供了更好的性能,以及对set操作的支持)。它是复杂的,但它的操作有着良好的最坏情况运行时间,并且在实践中是高

2015-11-18 17:02:38 469

转载 轻松搞定面试中的红黑树问题

版权所有,转载请注明出处,谢谢!http://blog.csdn.net/silangquan/article/details/18655795   连续两次面试都问到了红黑树,关键两次都没有答好,这次就完整地来学习整理一下。没有学习过红黑树的同学请参考:> Chapter 13 Red-Black Trees Chapter 14 Augmenting

2015-11-18 16:40:34 803

转载 二叉线索树(Threaded binary tree)

二叉树是一种非线性结构,对二叉树进行遍历时,实际上那个是将二叉树这种非线性结构按某种需要转化成线性序列,但每次遍历二叉树时,都要用递归对其进行遍历,当二叉树的节点较多时,这样的效率是很低的。所以我们有没有办法把我们遍历的二叉树保存,方便以后遍历呢?在一棵只有n个结点的二叉树中,假设有n个结点,那么就有2n个指针域,因为二叉树只用到了其中的n-1个结点,所以只要利用剩下的n+1个节点,我们就能把

2015-11-18 11:31:09 4035

转载 平衡二叉树及其应用场景

平衡二叉树简称平衡树,是由Adelson-Velskii和Landis于1962年首先提出的,所以又称为AVL树。他的定义很简单,就是若一棵二叉树的每个左右节点的高度差最多相差1,此二叉树即是平衡二叉树。把二叉树的每个节点的左子树减去右子树定义为该节点的平衡因子。二叉平衡树的平衡因子只能是1、0或者-1。平衡二叉树是对二叉搜索树(又称为二叉排序树)的一种改进。二叉搜索树有一个缺点就是,树的结构

2015-11-17 12:36:15 1041

转载 Python deque

from collections import deque简介 deque 是一个双向链表。优点  append和pop操作是O(1),高效率。适用操作  1·类似与unix下的tail函数。  2·从右边加入,从左边弹出的操作常用操作:1·新建一个deque对象:  q = deque('abcdefgh');2·删除一个元素  q.remove

2015-11-16 15:38:40 991

转载 python中xrange和range的异同

range    函数说明:range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列。range示例: >>> range(5) [0, 1, 2, 3, 4] >>> range(1,5) [1, 2, 3, 4] >>> range(0,6,2)[0, 2, 4]xrange    函数说

2015-11-16 12:29:13 513

转载 matlab连通域处理函数们

1、 matlab函数bwareaopen──删除小面积对象格式:BW2 = bwareaopen(BW,P,conn)作用:删除二值图像BW中面积小于P的对象,默认情况下使用8邻域。算法:(1)Determine the connected components.L = bwlabeln(BW, conn);(2)Compute the area of each comp

2015-11-10 12:51:15 3119

转载 Python strip()方法

Python strip()方法转载自:http://www.runoob.com/python/att-string-strip.html描述Python strip() 方法用于移除字符串头尾指定的字符(默认为空格)。语法strip()方法语法:str.strip([chars]);参数chars -- 移除字符串头尾指定的字

2015-11-06 11:16:25 1208

转载 Lowest Common Ancestor of a Binary Search Tree

题目:Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BST.According to the definition of LCA on Wikipedia: “The lowest common ancestor is defin

2015-11-03 11:16:47 459

转载 Python字符与ASCII码之间的转换

Python提供了ord和chr两个内置的函数,用于字符与ASCII码之间的转换。如:>>> print ord('a') 97 >>> print chr(97) a 下面我们可以开始来设计我们的大小写转换的程序了: #!/usr/bin/env python #coding=utf-8 def UCaseChar(ch): if ord(ch

2015-11-02 20:20:23 10411

转载 LIBSVM在python下的使用

1)从python官网上下载windows下的安装包python-2.7.3.msi并安装2)打开IDLE(python GUI),输入>>>import sys>>>sys.version如果你的python是32位,将出现如下字符:‘2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)]’这个

2015-11-01 20:44:30 838

转载 python中的reduce函数

python中的reduce   python中的reduce内建函数是一个二元操作函数,他用来将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给reduce中的函数 func()(必须是一个二元操作函数)先对集合中的第1,2个数据进行操作,得到的结果再与第三个数据用func()函数运算,最后得到一个结果。如:    def myadd(x,y):          r

2015-11-01 11:31:04 486 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除