代码改变世界

编程珠玑第十三章----查找

2012-07-27 13:17 by javaspring, 162 阅读, 0 推荐, 收藏, 编辑
摘要:1、顺序查找int find1(int *array,int n,int val) { if (n<=0) { return -1; } for (int i=0;i<n;i++) { if (val==array[i]) { return i; } } return -1; }2、二分查找int find2(int *array,int n,int val) { if (n<=0) { return -1; } int begin=0,end=n-1,mid; while(begin<=end) { mid... 阅读全文

编程珠玑第十一章----排序

2012-07-27 13:15 by javaspring, 273 阅读, 0 推荐, 收藏, 编辑
摘要:1、快速排序 原理:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序。void quickSort(int *a,int s,int t) //数组首地址a,数组起始位置s(初始值为0),结束位置t(初始值为n-1) { int i=s,j=t+1,temp,x=a[s]; do { do { i++; } while (a[i]<a[s]); //找比第一个元素小的元素 do { j--; } while (a[s]<a[j]); //找比... 阅读全文

编程珠玑第九章

2012-07-27 12:54 by javaspring, 138 阅读, 0 推荐, 收藏, 编辑
摘要:1、内存访问(连续内存访问与跨页面访问内存的区别) 注意在访问内存的时候,要注意内存的连续性,如果访问的内存不是连续的,那么程序的运行速度也会受到极大的影响 例如访问一个二维数组时,先访问行,再访问列,能够减少页面调度次数,同时cache命中率也相对高些。2、递归调用宏时,需要小心,宏中的某个参数被调用了多次以致数值发生了变化 #define Max(a,b) ((a>b)?:(a):(b)) // Max(i++,j++),调用之后,i、j的值可能会增加两次 //max(i++,func(j++)),调用之后,可能会导致函数func()被调用两次 阅读全文

编程珠玑第八章

2012-07-27 12:23 by javaspring, 248 阅读, 0 推荐, 收藏, 编辑
摘要:1、求一个整型数组中相邻子向量的最大和。方法一:最直观的,也是最容易想到的,长度为n的数组,子向量个数为 n *(n+1)/ 2 ,找到和最大的子向量,复杂度为 O(n^2 )int findMax(int *a,int n) //a为待查找数组,n为数组长度 { int max=0,sum=0; for (int i=0;i<n;i++) { sum=0; for (int j=i;j<n;j++) { sum+=a[j]; max=max>sum?max:sum; } } return max; }改进方法:顺序查找整个数组,用maxSofar存... 阅读全文

编程珠玑第四章

2012-07-27 10:53 by javaspring, 310 阅读, 0 推荐, 收藏, 编辑
摘要:1、二分查找代码int find(int *a,int n,int key) //a为待查找数组,n为数组长度,key为待查找元素 { int begin=0,end=n-1,mid=0; while(begin<=end) { mid=(begin+end)/2; if(a[mid]==key) //相等,直接返回key在数组中的位置 return mid; else if(a[mid]>key) //key较小,在左半部分查找 end=mid-1; else //key较大,在... 阅读全文

编程珠玑第三章

2012-07-27 10:31 by javaspring, 292 阅读, 0 推荐, 收藏, 编辑
摘要:1、本书出版之时,美国的个人收入所得税分为5种不同的税率,其中最大的税率大约为40%.以前的情况则更为复杂,税率也更高。下面所示的程序文本采用25个if语句的合理方法来计算1978年的美国联邦所得税。税率序列为0.14, 0.15, 0.16, 0.17, 0.18.....。序列中此后的计算大于0.01.有何建议呢?if income <= 2200 tax = 0;else if income <= 2700 tax = 0.14 * (income - 2200);else if income <= 3200 tax = 70 + 0.15 * (income - 27 阅读全文

Asp.Net+Jquery.Ajax详解2-$.Load

2012-07-26 20:42 by javaspring, 426 阅读, 0 推荐, 收藏, 编辑
摘要:目录(已经更新的文章会有连接,从7月25日开始,每2到3天更新一篇):Asp.Net+Jquery.Ajax详解1-开篇(2012.07.25发)Asp.Net+Jquery.Ajax详解2-$.Load(2012.07.26发)Asp.Net+Jquery.Ajax详解3-$.get和$.post(2012.07.30发)Asp.Net+Jquery.Ajax详解4-$.getJSON(2012.07.31发)Asp.Net+Jquery.Ajax详解5-$.getScript(2012.08.04发)Asp.Net+Jquery.Ajax详解6-$.ajaxSetup(2012.08.06 阅读全文

Java经典线程同步问题------生产者与消费者

2012-07-26 19:38 by javaspring, 251 阅读, 0 推荐, 收藏, 编辑
摘要:先上代码class Test { public static void main(String []args) { Queue q=new Queue(); Producer p=new Producer(q); Consumer c=new Consumer(q); p.start(); c.start(); } } class Producer extends Thread { Queue q; Producer(Queue q) { this.q=q; } public void run() { for(int i=0;i<10;i++) ... 阅读全文

Android通过图片名字获得ID

2012-07-25 22:41 by javaspring, 2489 阅读, 0 推荐, 收藏, 编辑
摘要:package com.zhycheng;import android.R.drawable;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.ImageView;import com.zhycheng.R;public class TestClassActivity extends Activity imp 阅读全文

Android实现两次按下返回键退出

2012-07-25 20:33 by javaspring, 272 阅读, 0 推荐, 收藏, 编辑
摘要:@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) { if((System.currentTimeMillis()-exitTime) > 2000) //System.currentTimeMillis()无论何时调用,肯定大于2000 ... 阅读全文
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 63 下一页