自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

达叔

天道酬勤

  • 博客(19)
  • 资源 (3)
  • 收藏
  • 关注

原创 2014百度校园招聘面试题

问了很多问题,我记住的也就这么多了。。一面:1、简述一下java垃圾处理机制的原理2、说一下你所了解的java容器3、java的io流都有哪些?哪些是字节流,哪些是字符流,缓冲流是怎么回事?4、tcp/ip 是如何建立和断开连接的?5、操作系统的作业调度算法有哪些?6、设计算法:1000亿个数,找出其中最大的100个,分析时间复杂

2013-09-28 23:45:27 3800 4

原创 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1

java多线程问题,主要考察的就是如何创建线程。值得思考一下的是最后的运行结果~程序结束的时候j的值是多少呢?如果每个线程执行的次数都相同,那么结果当然是0了。因为这两对线程两两抵消。最后j就为0了。代码如下:package go.derek;public class ThreadTest { private int j; private synchronize

2013-09-23 20:44:01 2295

原创 用JAVA扫描指定文件夹下面所有以.txt结尾的文件,并将其绝对路径输出

这个问题需要了解一下File这个类的几个常用方法。大家可以直接在代码中体会一下。package go.derek;import java.io.*;import java.util.regex.Matcher;import java.util.regex.Pattern;public class Findfile { public void find(String path,

2013-09-22 20:59:03 7710

原创 一道百度2014校招笔试题

题目:用c/c++,不借助任何系统函数,实现字符串的反转,如输入apple,输出elppa真是哪壶不开提哪壶,C语言本来我就才疏学浅。。。写个java的糊弄一下吧。。public class Reverse { public String reverse(String str){ char[] arr=new char[str.length()]; for(int i=str

2013-09-22 16:08:48 3290 14

原创 顺序查找的优化方法

我们知道折半查找的速度比顺序查找要快很多,但前提是折半查找需要有序的数组。讲解在注释里面~package go.derek;import java.util.Random;public class Search { //这个是普通的顺序查找,for循环里面每执行一次都要判断一下i<=arr.length //这个是会消耗时间的 public int seqSearch(int[

2013-09-20 19:16:45 1915

原创 冒泡排序优化版,性能近乎翻倍

原始的冒泡排序相对而言是非常耗时的,即使一个数组经过几轮交换已经变的有序了,例如[2,1,3,4,5,6,7]这个数组,经过第一轮,已经变成有序的了,但顽固的冒泡还是要继续进行没有营养的两两比较,从而牺牲了时间。如果用一个flag来判断一下,当前数组是否已经有序,如果有序就退出循环,这样可以明显的提高冒泡排序的表现~由于冒泡排序的时间复杂度为O(n*n)所以当数据越多的时候,越慢,非常不适

2013-09-19 12:53:53 4013 2

原创 java快速排序1000万无序数组JVM-Xmx=256M 耗时2s

自己动手写排序算法,快速排序是比较不好写的了~import java.util.*;class Test{ public void quickSort(int[] arr,int low,int high){ if(low<high){ int i=low; int j=high; int x=arr[low]; while(i<j){ while(

2013-09-18 12:36:22 2649 1

原创 java实现冒泡排序,选择排序,插入排序,快速排序(简洁版)及性能测试

1、冒泡排序是排序里面最简单的了,但性能也最差,数量小的时候还可以,数量一多,是非常慢的。它的时间复杂度是O(n*n),空间复杂度是O(1)代码如下,很好理解。public void bubbleSort(int[] arr){ int temp=0; for(int i=0;i<arr.length;i++){ for(int j=arr.length-1;j

2013-09-17 21:37:51 5137 5

原创 一道2014年阿里巴巴校招笔试题

题目是某缓存系统采用LRU算法,假定缓存容量为4,并且初始为空,那么在顺序访问以下数据项的时候,1,5,1,3,5,2,4,1,2出现缓存直接命中的次数是()次,最后缓存中即将准备淘汰的数据项是()。先解释下概念吧LRU(least recently used)算法:就是把最近一次使用时间离现在时间最远的数据删除掉。更多详细的了解请看我写的这篇博文如何用LinkedHashMa

2013-09-16 12:14:18 4061 2

原创 如何用LinkedHashMap实现LRU缓存算法

阿里巴巴笔试考到了LRU,一激动忘了怎么回事了。。准备不充分啊。。缓存这个东西就是为了提高运行速度的,由于缓存是在寸土寸金的内存里面,不是在硬盘里面,所以容量是很有限的。LRU这个算法就是把最近一次使用时间离现在时间最远的数据删除掉。先说说List:每次访问一个元素后把这个元素放在 List一端,这样一来最远使用的元素自然就被放到List的另一端。缓存满了t的时候就把那最远使用的元素remov

2013-09-15 20:18:06 24906 9

原创 寻找一个字符串中最长的重复子串,如 abcdabc 最长重复串 是abc

下午就要去参加阿里巴巴的笔试了,早上起来做一道据说是阿里巴巴13年校招的考题找找手感。。。题目是寻找一个字符串中最长的重复子串。 如 abcdabc 最长重复串 是abc这个题还是挺有意思的(不过好像没啥难度,我竟然没有调试,写一次就运行出来了。。)用简单的两层循环,结合substring()方法就可以了直接上代码吧~class Test{ String reg,left;

2013-09-14 11:22:57 10364 9

原创 Shell中的if else语句小演示

安安静静学习小shell,今天看到if else 喽~下面这个脚本是判断用户执行脚本的参数,如果是hello的话,就显示how are you如果什么都没有,就提示输入如果参数不是hello,就提示输入hello代码也很简单~#!/bin/bashif [ "$1" == "hello" ];thenecho how are you !elif [ "$1" ==

2013-09-12 22:35:52 1356

原创 巧用test判断来写shell脚本

感觉最近很忙啊,阿里巴巴和百度马上就要笔试了,算法神马的还没有看。。还是安心学习linux吧,决定在接下来的一周里,每天写一个shell script#!/bin/bash#输出提示语句,请输入一个文件名,这个脚本会检测这个文件的类型和权限echo "please input a filename,then the script will check the file's type

2013-09-11 22:57:00 1777

原创 Linux date的用法小解

#!/bin/bashecho -e "i will use touch command to create 3 files"read -p "input filename: " fileuserfilename=${fileuser:-"filename"}date1=$(date --date='2 days ago' +%Y%m%d)date2=$(date --date

2013-09-10 19:39:21 1954

原创 Linux $( )与${ }的区别

初学者也许会遇到这个问题~$( )的用途和反引号` `一样,用来表示优先执行的命令,比如ls -l $(locate build.xml),表示先找到build.xml的位置,然后再列出详细信息。${ }就是取变量了,比如:echo ${PATH}就是这样~

2013-09-10 19:04:20 1249

原创 java统计Scanner输入的行数,制表位数以及空格数

最近在学C语言,每写一个C语言程序,就再写一个java的实现,发现简单的小程序,还是C语言简单啊。。。java写起来要复杂繁琐的多。。说到统计,通常的需求是统计一篇文章的各种信息数据。但神需求无处不在,只要技术使用正确就一定可以解决的。直接上代码。import java.util.*;class Test1{ public static void main(String[] a

2013-09-07 12:19:00 4577

原创 C语言getchar()与EOF小谈

#include      /* count characters in input; 1st version */    main()    {       int c;c=getchar();      while (getchar() != EOF)          putchar();  }这里的getchar()是一次读取一行,不是通过字面理解的

2013-09-05 19:26:51 1655

原创 (5/9)*(f-32)与5*(f-32)/9

今天在Linux下用c语言写个小程序玩玩,主要就是根据华氏温度计算摄氏温度。公式是:摄氏度=(5/9)*(华氏度-32)代码很简单~#includemain(){ int c,f; /*c代表摄氏度,f代表华氏度*/ int lower,upper,step; lower=0; upper=300; step=20; f=lower; while(f<=upper) {

2013-09-04 11:32:40 2848 1

原创 如何用java比较两个时间或日期的大小

有一个字符串的时间,比如"2012-12-31 16:18:36" 与另一个时间做比较,如果前者比后者早,则返回true,否则返回false。为此,我设计了一个方法。import java.util.*;import java.text.ParseException;import java.text.SimpleDateFormat;class Test{ public bool

2013-09-01 14:40:20 35854 3

学生电子账本系统

软件工程课设,采用swing+jdbc,后台采用mysql数据库,两张表,一张登陆表,一张账本表,大家可以轻松自己创建。

2013-04-27

android入门到精通

不可多得,通过代码学习,迅速上手。熟能生巧,android开发不在话下哦!

2013-03-23

空空如也

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

TA关注的人

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