自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Python十进制数学计算模块decimal

转自:http://www.cnblogs.com/moinmoin/archive/2011/09/26/2190720.htmlPython提供了decimal模块用于十进制数学计算,它具有以下特点:提供十进制数据类型,并且存储为十进制数序列;有界精度:用于存储数字的位数是固定的,可以通过decimal.getcontext().prec=x 来设定,不同的数字可以有不同的精度浮点

2017-02-26 23:31:41 1516

原创 使用位运算解决subsets

package subSets;import java.util.ArrayList;public class Main { public static void main(String[] args) { // TODO Auto-generated method stub String s = "abc"; for(int i=0;i<subSets(s).size()

2015-10-24 22:52:20 376

原创 求字符串中指定开始和结束字符串的子串数量

例如:String s = abababab;String sFrom = a;String sTo = b;那么结果为4;例如:S = aba; sFrom = ab; sTo = ba;那么结果为1;例如:S = round; sFrom = ro;sTo = on;那么结果为0。上代码:import java.util.Scanner;public class test

2015-10-24 21:28:27 437

原创 最大子数组

给定一个整数数组,找到一个具有最大和的子数组,返回其最大和。样例给出数组[−2,2,−3,4,−1,2,1,−5,3],符合要求的子数组为[4,−1,2,1],其最大和为6//先使用动态规划维护一个符合连续数组条件的每个位置的值的数组。然后遍历该数组,找出其中最大的值。public class Solution { /** * @param nums:

2015-10-07 13:04:12 318

原创 主元素

给定一个整型数组,找出主元素,它在数组中的出现次数严格大于数组元素个数的二分之一。方法1:使用hashmap来存储数组中的元素及对应的次数。空间复杂度较高。public class Solution { /** * @param nums: a list of integers * @return: find a majority number */

2015-10-07 11:48:38 485

原创 二叉树遍历

前序遍历:非递归解法public class Solution { /** * @param root: The root of binary tree. * @return: Preorder in ArrayList which contains node values. */ public ArrayList preorderTraversa

2015-10-06 21:33:24 288

原创 二叉树的层次遍历

给出一棵二叉树,返回其节点值的层次遍历(逐层从左往右访问)/** * Definition of TreeNode: * public class TreeNode { * public int val; * public TreeNode left, right; * public TreeNode(int val) { * this.va

2015-10-06 21:00:26 283

原创 带最小值操作的栈

实现一个带有取最小值min方法的栈,min方法将返回当前栈中的最小值。你实现的栈将支持push,pop 和 min 操作,所有操作要求都在O(1)时间内完成。public class Solution { private Stack stack; private Stack minStack; public Solution() { //

2015-10-06 20:41:13 333

原创 子树判断

有两个不同大小的二进制树: T1 有上百万的节点; T2有好几百的节点。请设计一种算法,判定 T2 是否为 T1的子树。public class Solution { /** * @param T1, T2: The roots of binary tree. * @return: True if T2 is a subtree of T1, or false.

2015-10-06 18:13:43 343

原创 合并两个排序链表

将两个排序链表合并为一个新的排序链表样例给出 1->3->8->11->15->null,2->null, 返回1->2->3->8->11->15->null。解法1:public class Solution { /** * @param ListNode l1 is the head of the linked list * @pa

2015-10-06 12:34:09 290

原创 删除链表中倒数第n个节点

删除链表中倒数第n个节点给定一个链表,删除链表中倒数第n个节点,返回链表的头节点。样例:给出链表1->2->3->4->5->null和 n = 2.删除倒数第二个节点之后,这个链表将变成1->2->3->5->null./** * Definition for ListNode. * public class ListNode { * int val;

2015-10-06 12:06:31 313

原创 奇偶分割数组

分割一个整数数组,使得奇数在前偶数在后。样例给定 [1, 2, 3, 4],返回 [1, 3, 2, 4]。public class Solution { /** * @param nums: an array of integers * @return: nothing */ public void partitionArra

2015-10-06 11:36:52 324

原创 搜索二维矩阵 II

写出一个高效的算法来搜索m×n矩阵中的值,返回这个值出现的次数。这个矩阵具有以下特性:每行中的整数从左到右是排序的。每一列的整数从上到下是排序的。在每一行或每一列中没有重复的整数。public class Solution { /** * @param matrix: A list of lists of integers * @pa

2015-10-03 22:36:21 1276

原创 用栈实现队列

正如标题所述,你需要使用两个栈来实现队列的一些操作。队列应支持push(element),pop() 和 top(),其中pop是弹出队列中的第一个(最前面的)元素。pop和top方法都应该返回第一个元素的值。public class Solution { private Stack stack1; private Stack stack2;

2015-10-03 22:27:07 327

原创 前序遍历和中序遍历树构造二叉树 && 中序遍历和后序遍历树构造二叉树

public class Solution { /** *@param preorder : A list of integers that preorder traversal of a tree *@param inorder : A list of integers that inorder traversal of a tree *@return :

2015-10-03 21:53:58 359

原创 寻找旋转排序数组中的最小值

假设一个旋转排序的数组其起始位置是未知的(比如0 1 2 4 5 6 7 可能变成是4 5 6 7 0 1 2)。你需要找到其中最小的元素。你可以假设数组中不存在重复的元素。public class Solution { /** * @param num: a rotated sorted array * @return: the minimum

2015-10-03 21:32:40 407

原创 翻转链表

public class Solution { /** * @param head: The head of linked list. * @return: The new head of reversed linked list. */ public ListNode reverse(ListNode head) { // write

2015-10-03 21:21:37 266

原创 单例Singleton

//恶汉式,可以在多线程环境下使用。但是会过早地创建实例,从而减低内存的使用效率class Solution { /** * @return: The same instance of this class every time */ private Solution(){}; public static Solution instance = ne

2015-10-03 21:04:18 325

原创 斐波纳契数列

查找斐波纳契数列中第 N 个数。所谓的斐波纳契数列是指:前2个数是 0 和 1 。第 i 个数是第 i-1 个数和第i-2 个数的和。斐波纳契数列的前10个数字是:0, 1, 1, 2, 3, 5, 8, 13, 21, 34 ...//使用循环的方法可以避免堆栈溢出class Solution { /** * @param n: an i

2015-10-03 20:47:05 416

原创 空格替换

设计一种方法,将一个字符串中的所有空格替换成 %20。你可以假设该字符串有足够的空间来加入新的字符,且你得到的是“真实的”字符长度。public class Solution { /** * @param string: An array of Char * @param length: The true length of the string * @r

2015-10-03 20:41:43 302

原创 二进制中有多少个1

两种解法如下://第一种解法,public class Solution {    /**     * @param num: an integer     * @return: an integer, the number of ones in num     */    public int countOnes(int num) {        // writ

2015-10-03 20:11:50 372

转载 《现代操作系统》读书笔记之——进程间通信

很多时候,进程需要和其他的进程进行通信。比如shell中的管道命令:ps -ef | grep nginx,一个命令的输出,作为另一个进程的输入,这就是进程间通信(Interprocess Communication)。    进程间通信主要需要解决三个问题:    1.一个进程如何给另一个进程传递信息    2.如何确保进程之间不互相干扰、妨碍    3.当进程间出现依赖关系时,

2015-06-18 22:52:17 1373

转载 《现代操作系统》读书笔记之——进程调度(二)

7.交互系统的调度算法时间片轮转调度算法(Round-Robin Scheduling)    时间片轮换调度算法是最古老、最简单、最公平并且使用最广泛的调度算法之一。每个进程被分配一段时间间隔,叫做时间片(quantum)。进程在这个时间间隔内允许运行,如果时间片用完了,那么CPU将会被抢占并且分给别的进程。如果在时间片结束之前,进程阻塞或者是结束了,那么CPU也会被分配

2015-06-18 22:51:14 864

转载 《现代操作系统》读书笔记之——进程调度(一)

如果计算机支持多道程序设计,那么它会经常碰到多个进程或者线程在同一时刻竞争CPU。只要当两个进程同时进入就绪状态,这种情况就会发生。但是CPU只有一个,那么这时候就需要做一个选择:到底接下来该选择哪个进程运行。操作系统做这个选择的部分就叫做调度器(scheduler),而使用到的算法叫做调度算法(scheduling algorithm)。    很多对进程调度使用的东西对于线程调度同样适

2015-06-18 22:49:33 787

转载 函数指针作为某个函数的参数

函数指针变量是一个变量,可以作为某个函数的参数来使用的。    一个实例: 设计一个 CallMyFun 函数,这个函数可以通过参数中的函数指针值不同来分别调用 MyFun1、MyFun2、MyFun3 这三个函数(注:这三个函数的定义格式应相同)。 #includevoid MyFun1(int x); void MyFun2(int x); void MyFun3(int x)

2015-05-28 23:26:00 325

转载 堆和栈的区别

堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、全局区(静态

2015-01-25 10:48:08 426

空空如也

空空如也

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

TA关注的人

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