01 2013 档案
摘要:给出一个数组,要求查找出这个数组中按顺序排第K大的数字。思路:利用快速排序的思想,把数组中的元素分治,并计算中间值的位置,如果是K,则这个数就是第K大的数字,如果比K小,那么再次利用快速排序分治中值以后的数据,如果比K大,则排序前面的数字,直到找到K的位置。下面给出C++实现的代码:#include <cstdlib>
#include <iostream> using namespace std; int partition(int data[],int first,int last) //¿ìËÙÅÅ
阅读全文
摘要:排序算法无疑是学习数据结构中的重点内容,本文将给出排序算法的汇总。下面是具体的实现:#include<stdio.h>
#include<stdlib.h>
#include<time.h> #define N 1000000 int Array[N];
int Temp[N]; //1、冒泡排序
void BubbleSort(int a[],int n){ int i,j; int temp; int tag; for(i=n-1;i>0;i--){ tag = 0; for(j=0;j<i;j++) ...
阅读全文
摘要:在排序算法中,冒泡排序是一个很经典的算法,最初的冒泡排序一直要运行n-1次,但是其中有些事不必要的操作,例 如,当没有两个数据发生交换时,就可以结束运行。 本文介绍的一种方法是对上述条件的改进,即不仅对尾数据进行条件判断,同时还对头数据进行条件判断,当头数据不发生交换时需要完成一些改进,下面给出实现的源代码:#include <cstdlib>
#include <iostream> using namespace std; void exchange(int& a,int& b)
{
int temp;
temp=a;
a=b;
b=temp; }
v
阅读全文
摘要:我们学数据结构的时候会学到多种排序算法,基本上都是基于比较的排序,下面的这个排序算法并不是基于比较,确切的说它是基于cpu调度算法实现的,这个算法的作者称之为--睡眠排序。 它的基本思想是,对一组数据进行排序,不能存在负数值,这个数是多大,那么就在线程里睡眠它的10倍再加10,不是睡眠和它的数值一样大的原因是,当数值太小时,误差太大,睡眠的时间不比输出的时间少,那么就会存在不正确的输出结果。 下面给出JAVA版本的代码,其中包含注释:public class SleepSort { public static void main(String[] args) { ...
阅读全文
摘要:一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果。这些要求包括:执行计算与数学运算、转换数据、解析数值、组合值和聚合一个范围内的值等。下表给出了T-SQL函数的类别和描述。函数类别作用聚合函数执行的操作是将多个值合并为一个值。例如 COUNT、SUM、MIN 和 MAX。配置函数是一种标量函数,可返回有关配置设置的信息。转换函数将值从一种数据类型转换为另一种。加密函数支持加密、解密、数字签名和数字签名验证。游标函数返回有关游标状态的信息。日期和时间函数可以更改日期和时间的值。数学函数执行三角、几何和其他数字运算。元数据函数返回数据库和数据库对象的属性信息。排名函数
阅读全文
摘要:一、流的概念 流(stream)的概念源于UNIX中管道(pipe)的概念。在UNIX中,管道是一条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备、外部文件等。 一个流,必有源端和目的端,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是Internet上的某个URL。 流的方向是重要的,根据流的方向,流可分为两类:输入流和输出流。用户可以从输入流中读取信息,但不能写它。相反,对输出流,只能往输入流写,而不能读它。 实际上,流的源端和目的端可简单地看成是字节的生产者和消费者,对输入流,可不必关心它的源端是什么,只要简单地从流中读数据,而对输出流,也可不知道它的目的端,只是
阅读全文
摘要:Java中的参数传递机制一直以来大家都争论不休,究竟是“传值”还是“传址(传引用)”,争论的双方各执一词,互不相让。不但“菜鸟”们一头雾水,一些“老鸟”也只知道结果却说不出所以然来。我相信看过下面的内容后,你就会明白一些。先看基本类型作为参数传递的例子:public class Test1 { public static void main(String[] args) { int n = 3; System.out.println("Before change, n = " + n); changeData(n); Syst...
阅读全文
摘要:sql语句优化原则性能不理想的系统中除了一部分是因为应用程序的负载确实超过了服务器的实际处理能力外,更多的是因为系统存在大量的SQL语句需要优化。为了获得稳定的执行性能,SQL语句越简单越好。对复杂的SQL语句,要设法对之进行简化。常见的简化规则如下:1)不要有超过5个以上的表连接(JOIN)2)考虑使用临时表或表变量存放中间结果。3)少用子查询4)视图嵌套不要过深,一般视图嵌套不要超过2个为宜。连接的表越多,其编译的时间和连接的开销也越大,性能越不好控制。最好是把连接拆开成较小的几个部分逐个顺序执行。优先执行那些能够大量减少结果的连接。拆分的好处不仅仅是减少SQL Server优化的时间,更
阅读全文

浙公网安备 33010602011771号