/*快速排序采用分治算法,將所需要排序的內容從文件讀入放入數組a[p:r],按以下三個步驟進行排序 以a[p]為基準元素將數組分為三段,將大于基準元素的放到后面的單元,小的放到前面的單元, 再用遞歸對a[p:q-1],a[q+1:r]進行排序,最后合并 時間復雜度:最壞時間復雜度:O(n2) 平均時間復雜度:O(nlogn) */
上傳時間: 2016-06-29
上傳用戶:chenbhdt
對PL0原編譯器進行了以下的擴充:1.增加以下保留字else(elsesym), for(forsym),to(tosym),downto(downtosym),return(returnsym),[(lmparen),](rmparen) 2.增加了以下的運算符:+=(eplus),-=(eminus),++(dplus),--(dminus) 取址運算符&(radsym),指向運算符@(padsym) 3.修改單詞:修改不等號#為<> 4.擴充語句:(1)增加了else子句 (2)增加了for語句 5.增加運算:(1).++運算 (2).--運算;(3).+=運算 (4).-=運算;(5).&取址運算; (6).@指向運算; 6.增加類型:(1).增加多維數組a[i1][i2][i3]……[i(n-1)][i(n-2)][in] (2).增加指針類型(任何變量都能存放指針,但不支持指針的指針,如b:=@@a應該改寫為c:=@a,b:=@c) 7.將過程procedure擴展為函數:(1).允許定義過程時在其后加參數(var a, var b,……..,var n) (2)允許通過指針向函數形式參數傳地址;(3)允許返回值;可以用 a:=p(a,b,c….,n) 返回
標簽: downtosym returnsym elsesym downto
上傳時間: 2016-07-02
上傳用戶:saharawalker
快速排序算法是基于分治策略的另一個排序算法。其基本思想是,對于輸入的字數組a[p:r],按以下3個步驟進行排序: (1)分解:以a[p]為基準元素將a[p:r]劃分成3段a[p:q-1],a[q]和a[q+1:r],使得a[p:q-1]中任何元素小于等于a[q],a[q+1:r],中的任何元素大于等于a[q]。下標q在劃分過程中確定 (2)遞歸求解:通過遞歸調用快速排序算法,分別對a[p:q-1]和a[q+1:r]進行排序 (3)合并:在a[p:q-1]和a[q+1:r]已經排好序的情況下,不需要執行任何運算,a[p:r]就已排好序 平均算法復雜度O(nlogn)
上傳時間: 2016-07-09
上傳用戶:wuyuying
flash 鍵盤音效取自win2000系統ding.wav,經過CoolEdit處理成音階,在Flash中導入在相應按鈕上。 沒有難度,就是耐心一點,成績不錯哦! 對應表: 低音G-a #G-w A-s #A-e B-d 中音C-f #C-t D-g #D-y E-h F-j #F-i G-k #G-o A-l #A-P B- 高音C-1 D-2 E-3 F-4 G-5 A-6 B-7 C(high)-8 #C-c #D-v #F-b #G-n #A-m
上傳時間: 2014-02-06
上傳用戶:ljmwh2000
1.Describe a Θ(n lg n)-time algorithm that, given a set S of n integers and another integer x, determines whether or not there exist two elements in S whose sum is exactly x. (Implement exercise 2.3-7.) #include<stdio.h> #include<stdlib.h> void merge(int arr[],int low,int mid,int high){ int i,k; int *tmp=(int*)malloc((high-low+1)*sizeof(int)); int left_low=low; int left_high=mid; int right_low=mid+1; int right_high=high; for(k=0;left_low<=left_high&&right_low<=right_high;k++) { if(arr[left_low]<=arr[right_low]){ tmp[k]=arr[left_low++]; } else{ tmp[k]=arr[right_low++]; } } if(left_low<=left_high){ for(i=left_low;i<=left_high;i++){ tmp[k++]=arr[i]; } } if(right_low<=right_high){ for(i=right_low;i<=right_high;i++) tmp[k++]=arr[i]; } for(i=0;i<high-low+1;i++) arr[low+i]=tmp[i]; } void merge_sort(int a[],int p,int r){ int q; if(p<r){ q=(p+r)/2; merge_sort(a,p,q); merge_sort(a,q+1,r); merge(a,p,q,r); } } int main(){ int a[8]={3,5,8,6,4,1,1}; int i,j; int x=10; merge_sort(a,0,6); printf("after Merging-Sort:\n"); for(i=0;i<7;i++){ printf("%d",a[i]); } printf("\n"); i=0;j=6; do{ if(a[i]+a[j]==x){ printf("exist"); break; } if(a[i]+a[j]>x) j--; if(a[i]+a[j]<x) i++; }while(i<=j); if(i>j) printf("not exist"); system("pause"); return 0; }
上傳時間: 2017-04-01
上傳用戶:糖兒水嘻嘻
摘# 要:設計和制作了一款&& ?G(!& )*)液晶電視用4F9 背光源。模擬出4F9 的光學分布,以此為基礎模擬出4F9 陣列的光強和顏色分布,得到適合的背光源厚度尺寸。在實際制作中,采用高效的驅動電路對4F9 陣列進行驅動,利用鋁制散熱片為背光源提供必須的散熱。測試的結果,在整體背光源功耗為"$% M 時,中心亮度達到"D DE% ?6 N G!,均勻度為CO@ " P,色彩還原性達到=QR’ 標準"%! P,遠遠超過’’S4 背光源的A% P。
上傳時間: 2021-12-09
上傳用戶:
S32K148 T-BOX快速入門CONTENTS:? Get to know the S32K148 T-BOX Reference Design Board (RDB)? S32K148 T-BOX RDB out-of-the-box setup? Creating a new S32DS project for the S32K1xx MCU? S32DS debugging basics? Create a P&E debug configuration
上傳時間: 2022-06-20
上傳用戶:jiabin
Use P/Invoke to Develop a .NET Base Class Library for Serial Device Communications
標簽: Communications Develop Library Invoke
上傳時間: 2014-12-21
上傳用戶:zjf3110
顯示ARP緩存信息.A R P高效運行的關鍵是由于每個主機上都有一個A R P高速緩存。這個高速緩存存放了最 近I n t e r n e t地址到硬件地址之間的映射記錄。高速緩存中每一項的生存時間一般為2 0分鐘,起 始時間從被創建時開始算起。
上傳時間: 2013-12-27
上傳用戶:siguazgb
含t h r e a d x,u c o s 的b s p
標簽:
上傳時間: 2015-06-29
上傳用戶:xfbs821