`
kevin_in_java
  • 浏览: 30306 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论
文章列表
公司不能登录,很久不发博客,今天偶然看到多线程,发现自己同步用的不好,简单写个例子用synchronized 关键字的例子,100张票 3个窗口同时销售。另外加锁也可以用Lock 接口的实现类,此处不做拓展,可参考Java核心 基础卷 直接上代码。   package com.learning.test; public class TestMutithread { public static void main(String[] args) { Ticket ticket = new Ticket(); ticket.number = 100; Tic ...
Service 包括bound Service和unbound Service.首先我们先讨论unBound Service使用方法。详细内容可参考官方dev guide   创建一个Service 有两种方式,一是继承IntentService,或者继承Service。   一,unbound service(未绑定activity,service执行完任务后要自己停止,stopself 或者stopservice)   1、IntentSerivce   IntentService 是Service的一个子类,操作上是单线程的。当Intent  Start 这个IntentS ...
直接上代码,参考自http://www.cnblogs.com/answer1991/archive/2012/04/22/2464524.html       import java.awt.dnd.Autoscroll; import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; import java.util.concurrent.ThreadFactory; import java.util.concurrent.ThreadPoolExecu ...
HttpPost request = new HttpPost(url); // 先封装一个 JSON 对象 JSONObject param = new JSONObject(); param.put("name", "rarnu"); param.put("password", "123456"); // 绑定到请求 Entry StringEntity se = new StringEntity(param.toString()); request.setEntity(se); // 发送请 ...
package com.interview.prepare; /* * 四则运算,没有括号,数字均小于零,其中中间运算过程取整。 * 首先将运算时转换为逆波兰式(后缀式) * 然后通过一个栈辅助运算。当信息为数字时入栈,当信息为符号时~(~代表+-* / * 一种),出栈并 * 做运算top2~top1 * 测试用例 3+8*2/9-2 结果输出2 * */ import java.util.ArrayList; import java.util.List; import java.util.Stack; public class C ...
RT,算法导论5.1-3 没想出来。google的答案。。精妙 x=random() y =random()    if  x!=y      reurn 0 else      return 1
算法导论5.1-1 参考博客 http://blog.csdn.net/effenberg11/article/details/5976838   http://qianggezhishen.bokee.com/viewdiary.43964492.html 博客中算法  1、把要生成的数标记为 a, a+1, a+2,..., b-a+1,…,b-1,b 2、取最小的 m,使得 2^m >= n 3、通过随机生成 0,1 的函数生成一个  m 比特整数(随机生成每一位),这样能随机生成 [a, 2^m) 内的整数。 4、随机生成一个 [a,2^m) 中的整数,如果这个数大小在 ...
package Chapter2; /* * 题目:算法导论2.3.7 * 请给出一个运行时间为O(nlgn)的算法,使之能在给定一个由n个整数构成的集合S和另一个整数x时, * 判断出S中是否存在有两个其和等于S的数 * *算法思想: *1、默认集合S是排序过的,若果没有排序,先排序。。。各种排序方法。 *2、本问题是二分查找的变形。。 * for i ←1to n * temp=x-array[i] * 二分查找temp * */ public class SearchSum { public static vo ...
直接上代码,递归式   package cn.edu.cqupt.serach; public class HarfSearch { public static int search(int[] array,int start,int end,int target) { int middle = (start+end)/2; if(target==array[middle]) return middle; /* * 当数列只剩两个元素时{start,end} * 由于middle每次都等于start,故做特殊判断 * ...
package Sort; import java.util.Arrays; public class InsetSort { public static void main(String args[]) { int [] a = {9,8,7,6,5,4,3,2,1}; for(int j=1;j<a.length;j++) { int key = a[j]; int i = j-1; for(;i>=0&&a[i]>key;i--) { a[i+1]=a[i]; } ...
package Sort; import java.util.Arrays; public class InserSortRecurrence { public static void InsertSort(int[] array,int index) { if(index>0) { InsertSort(array,index-1); for(;index>0&&array[index]<array[index-1];index--) { int temp=array[index]; ...
package test; /* * CHOUSESORT(A) * for i ← 1 to length(A) * min ← i * j ← min+1 * for j<length(A) * if A(j)<A(min) * min ← j * swap A(min) A(i) */ import java.util.Arrays; public class Sort { public static void chouseSort(int array[]) { for(int ...
不多说,上代码,代码写得很丑,编码习惯不好。。 package Sort; import java.util.Arrays; public class MergeSort { public static void main(String args[]) { int array[]={8,7,6,5,4,3,2,1}; MergeSort sort= new MergeSort(); sort.Merge_Sort(array, 0, array.length-1); System.out.println(Arrays.toString(array)) ...
spring采用构造注入的方式可能出现循环引用的问题。 例如类B 和类A相互引用 public class B { private A a; public B() { System.out.println("create b with no args"); } public B(A a) { this.a=a; System.out.println("creating b"); } public A getA() { return a; } public void setA(A ...
/* * * 求子数组的最大和(数组) 题目: 输入一个整形数组,数组里有正数也有负数。 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 求所有子数组的和的最大值。要求时间复杂度为O(n)。 例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2, 因此输出为该子数组的和18 本题目采用动态规划的思想。 求对大子序列必然是一个正序列+序列的情况。当某子序列和为0时,清空临时子序列和,即下面的temp=0; 当前子序列大于max子序列时,max=temp */ pack ...
Global site tag (gtag.js) - Google Analytics