自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 动态规划

求数组中最长递增子序列写一个时间复杂度尽可能低的程序,求一个一维数组(N个元素)中的最长递增子序列的长度。例如:在序列1,-1,2,-3,4,-5,6,-7中,其最长的递增子序列为1,2,4,6。 分析与解法       根据题目的要求,求一维数组中的最长递增子序列,也就是找一个标号的序列b[0],b[1],…,b[m

2015-10-04 11:11:37 332

原创 递归求阶乘

public class Main6 { public static int cal(int n,int k){ if(n==k){ return 1; }else if(k==0){ return 1; }else { return cal(n-1,k-1)+cal(n-1,k); } } public static void main(String[]

2015-10-04 10:21:34 297

原创 大话数据结构--排序

大话数据结构中排序的顺序是--冒泡排序--选择排序--插入排序--希尔排序--堆排序--归并排序--快速排序在希尔排序之前,所有的排序算法的复杂度都是O(N2),希尔排序打开了复杂度为O(nlongn)的大门。

2015-10-03 22:36:44 391

原创 冒泡排序

public static void maoSort(int[] ints){ int temp; for(int i=ints.length-1;i>0;i--){ for(int j=0;j<i;j++){ if(ints[j+1]<ints[j]){ temp=ints[j+1]; ints[j+1]=ints[j]; ints[j]=te

2015-09-28 17:47:19 235

原创 字符串压缩

import java.util.Scanner;public class Main{ public static void main(String[] strs){ Scanner sca = new Scanner(System.in); String str=sca.nextLine(); int pointer=0; if(str==null||str.length()

2015-09-28 16:25:48 259

原创 java中的for循环

java中的for循环中的判断语句,不要包含两个,可以将第二个判断语句放到循环里面。

2015-09-28 11:28:02 294

原创 数字围成一个圈,数到3退出

import java.util.*;public class Main7 { public static void main(String[] strs){ System.out.println(leftPerson(3)); } public static int leftPerson(int n) { if(n==1){ return 1; } if(n

2015-09-27 09:04:52 546

原创 .的转义

String sss = "12.3.12"; String[] chars = sss.split("\\."); for(String aa:chars){ System.out.println(aa); } System.out.println("..");注意split()中的.应该是转义,并且是两个\\。但是要是直接输出的话就可以直接写,如最后一行。

2015-09-25 10:21:04 838

原创 数据结构-树转换为二叉树、森林转换为二叉树

1、加线:在所有的兄弟节点之间加一条连线;2、去线:对树中的每一个结点,只保留它与第一个孩子结点的连线,删除它与其他孩子结点之间的连线。3、层次调整:以树的根结点为轴心,旋转,注意,第一个孩子是二叉树结点的左孩子,兄弟结点为右孩子。深林:1、把每个树转换为二叉树2、第一个二叉树不动,从第二课二叉树开始,依次把一颗二叉树的根结点作为前一刻二叉树的根结点的右孩子。

2015-09-25 09:39:49 780

原创 去哪儿网有点问题2

import java.util.Collections;import java.util.LinkedList;import java.util.Scanner;public class Main { public static boolean isContain(int[] ints,int i){ for(int j =0;j<ints.length;j++){ if(

2015-09-21 16:05:26 247

原创 去哪儿网试题有点问题1

import java.util.Scanner;public class GetNewVersion { public static boolean isMoreStable(String str1,String str2){ String[] str1s = str1.split("."); String[] str2s = str2.split("."); int x

2015-09-21 15:59:41 325

原创 c++地址问题

int main(int argc,char**argv){    int a[4]={1,2,3,4};    int*ptr=(int*)(&a+1);    printf(“%d”,*(ptr-1));}指针的实质为:地址+步长。指针的类型决定了步长。定义了数组a[4],其中a,&a,&a[0]都是数组的起始地址。但是步长有区别,也就是指向的类型不同a等同于a

2015-09-20 17:19:12 267

原创 华为求字符串最后单词长度

import java.util.Scanner;public class Main { static int getCount(String str){ if(str==null||str.length()==0){ return 0; } String strTem = str.trim(); String[] strings = strTem.split(" "

2015-09-20 10:49:22 243

原创 递归分解质因数

public class Java { static boolean isSu(int a){ for(int i =2;i < Math.sqrt(a);i++){ if (a%i==0){ return false; } } return true; } static void printer(int a ){ if((isSu(a)==true)&&

2015-09-20 09:05:18 1893

原创 c++ tip

int anan[10]={1}; cout<<sizeof(anan)<<endl; cout401 int a[]={1,3,4,5,6,7}; int b[]={2,4,5,6,8,9}; cout<<sizeof(a[0])<<endl; cout<<(sizeof(a))<<endl; cout4246char a[10]

2015-09-16 21:16:56 276

原创 c基础知识

http://blog.csdn.net/h_armony/article/details/6764811

2015-09-16 19:23:37 317

原创 计算某个数的二进制中有几个1

int func ( x ){ int countx = 0; while ( x ) { countx ++; x = x&(x-1); } return countx;}

2015-09-16 19:00:05 260

原创 快速排序

public class KuaiSu { static int count =0; public static void quickSort(int[] arr){ qsort(arr, 0, arr.length-1); } private static void qsort(int[] arr, int low, int high){ if (low < high

2015-09-12 11:25:41 232

原创 数据结构tip

由前序遍历和中序遍历能够唯一确定一个二叉树;由中序遍历和后序遍历能够唯一确定一个二叉树;由后序遍历和前序遍历不能唯一确定一个二叉树;

2015-09-11 17:35:24 260

原创 已知前序中序确定后序java

import java.util.ArrayList;import java.util.Arrays;public class Solution { public static void main(String[]strs){ String preOrder ="12453"; String inOrder ="42513"; Node root = houXu(preOr

2015-09-11 17:33:38 464

原创 论java中的contains

Arrays中常用的几个静态方法:1、二分查找,是静态方法,且不需排序,返回下标。static intbinarySearch(byte[] a, byte key)Searches the specified array of bytes for the specified value using the binary search algorithm.

2015-09-11 17:03:43 931

原创 java tips

用完StringBuilder之后,还要通过toString转回到string

2015-09-11 00:15:47 220

原创 创建层次二叉树

1、层经尝试着用递归实现二叉树的层次创建,但是失败了。如下语言所示,分析可能还是return root上面的两句中,执行完第一句之后,i发生了变化,但还不是太明白:public class ErChaShu { public TreeNode root;// public int counter; public ErChaShu(){ root = null; } pub

2015-09-02 23:36:08 617

原创 论char数组在c++和java中的不同

1、在java中char[] chars = "nimei";是不能被编译通过的。但在c++中是没问题的。 char[] chars = {'1','2','3'}; String strrrr = Arrays.toString(chars); System.out.println(chars); System.out.println(strrrr);输出:123

2015-09-01 18:40:14 441

原创 小心split()函数

1、一定要小心String的split()函数, String strnan = " nan ma"; String[] strnans = strnan.split(" "); System.out.println(strnans[0]);输出是没有;因为原字符串开始是有空格的,这个函数处理这种情况的时候就不是去掉了空格,而是将空格转化成了“”,即空。但是strnans的长度是3.

2015-09-01 18:14:21 222

原创 数组和ArrayList

1、在java中,数组一旦建立,长度就固定了。因此数组建立的时候要么指定大小:int[] ints= new int[3];要么直接赋值int[] intss = {2,3,5};二维数组定义时,可以只指定一维的大小:那就是行的int[][] intsss = new int[2][];。java中的二维数组定义时赋值,必须得用{}括起来,int[][3] intssss= {1,3,2,

2015-09-01 16:55:30 218

原创 java null

主方法中:   String str = ""; System.out.println(str == ""); System.out.println(str == null); System.out.println(str.length());输出结果是:truefalse0主方法中: Stri

2015-09-01 13:20:28 200

原创 单例方式的加载过程

public class StaticCTest { private static StaticCTest st = new StaticCTest(); public static int count1; public static int count2 = 0; public StaticCTest(){ count1++; count2++; } public stat

2015-08-31 20:23:07 260

原创 java 访问的权限

1、JAVA访问修饰符:----------[public | default | protected | private ]public: 完全开发protected: 同包及子类访问default(无): 同包访问private: 只能本类访问当构造方法为private级别时,意味着只能在当前类访问它,不能被继承,不能被其他程序用new创

2015-08-31 08:54:35 216

原创 java tips 子字符串

String string1 = "nanganglei"; String str = string1.substring(0,1);注意:1、输出的是“n”,就意味着子字符串是包含起始位的字符的。2、注意是substring,都是小写。不需要import其他包。Math的方法不需要import包。

2015-08-28 20:19:12 208

原创 java的private继承问题

class C{ private void print(){ System.out.println("c"); }}class D extends C { public void shuChu(){ print(); }}以上程序编译不能通过。父类中的private方法是不能被继承。

2015-08-28 12:11:50 467

转载 子类重写父类的方法应注意的问题

若想实现一个合格重写方法,而不是重载,那么必须同时满足下面的要求!重写规则之一:重写方法不能比被重写方法限制有更严格的访问级别。(但是可以更广泛,比如父类方法是包访问权限,子类的重写方法是public访问权限。) 比如:Object类有个toString()方法,开始重写这个方法的时候我们总容易忘记public修饰符,编译器当然不会放过任何教训我们 的机会。出错的原因就是:没有加任何访

2015-08-28 11:35:31 650 1

原创 final继承问题

1、final方法是可以继承的,但是在子类中不能进行重写:public class Test { public static void main (String[] args) { Horse horse = new Horse(); horse.shuChu(); }}class Animal { final void eat(){ System.ou

2015-08-28 11:22:14 247

原创 java存储数据

在JAVA中,有六个不同的地方可以存储数据: 1. 寄存器(register)。 这是最快的存储区,因为它位于不同于其他存储区的地方——处理器内部。但是寄存器的数量极其有限,所以寄存器由编译器根据需求进行分配。你不能直接控制,也不能在程序中感觉到寄存器存在的任何迹象。    ------最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 堆栈(stack)。位

2015-08-28 09:04:46 330

原创 异常的实例

import java.io.*;public class TestThreadClas { public static void main(String argv[]){ TestThreadClas m = new TestThreadClas(); try { System.out.println(m.amethod()); } catch (Exception e)

2015-08-27 22:13:08 227

原创 java集合框架

collection中定义的方法:上述类图中,实线边框的是实现类,比如ArrayList,LinkedList,HashMap等,折线边框的是抽象类,比如AbstractCollection,AbstractList,AbstractMap等,而点线边框的是接口,比如Collection,Iterator,List等。上述的所有集合类,都实现了Iterator(迭代

2015-08-27 20:16:22 245

原创 system.out.println触发联想

1、system.out.println();可以输出基本类型和类类型,可以直接输出string类型对象。2、其实system.out.println();输出的是类的toString方法,所以非string对象也可以被system.out.println输出,但是很有可能是乱码,如: class Node { int number; Node nextNode; Node(int

2015-08-27 17:44:34 324

原创 集合框架的线程安全类

线程安全类在集合框架中,有些类是线程安全的,这些都是JDK1.1中的出现的。在JDK1.2之后,就出现许许多多非线程安全的类。下面是这些线程安全的同步的类:Vector:就比ArrayList多了个同步化机制(线程安全)。Statck:堆栈类,先进后出。Hashtable:就比HashMap多了个线程安全。Enumeration:枚举,相当于迭代器。

2015-08-27 13:53:25 1091

转载 入栈出栈序列问题

题目如下:用n个1和m个0组成字符串,要求任意的前k个字符中,1的个数不能少于0的个数。问满足要求的字符串数目。  解法:该题的解法也是看了一些牛人的提示才知道的,也才知道catalan数这种东东,catalan数的一个典型应用实例跟这个题很相似,其分析过程也很有启发作用,这个应用实例是这样的:一个栈(无穷大)的进栈序列为1,2,3,..n,有多少个不同的出栈序列?

2015-08-27 12:00:17 5996 1

原创 java 中记录时间

public class QuN{ public static void main(String[] strs){ long startTime = System.currentTimeMillis(); int i = 0; while(i<1000000){ i++; } long endTime = System.currentTimeMillis(); Sy

2015-08-27 08:35:22 436

空空如也

空空如也

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

TA关注的人

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