1,数组简介:
所谓数组,就是相同数据类型的元素按1定顺序排列的集合,就是把有限个类型相同的变量用1个名字命名,然后用编号辨别他们的变量的集合,这个名字称为数组名,编号称为下标。组成数组的各个变量称为数组的份量,也称为数组的元素,有时也称为下标变量。数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的情势组织起来的1种情势。这些按序排列的同类数据元素的集合称为数组。
2,例子要求:
针对数组这个最基础的数据结构,罗列这个数据结构可以支持的操作,并以大O的方式分析各个操作的时间复杂度
3,实现进程:
#include <QCoreApplication>
//数组的基本操作,排序,取最大值,模糊查询某个值
// 【1】数组排序 算法
// 1.1, 冒泡排序 O(n2)
最好的是数组有序情况下为:O(2N),
平均是正常随机乱序为:O(2N),
最差的是数据完全乱序O(n2)。
void BubbleSort(int A[], int N)
{
int tmp;
for (i = 0; i < N – 1; ++i)
{
for (j = 1; j < N – i; ++j)
{
if (A[j] > A[j – 1]) //从大到小排序,把较小的交换到后面来
{
tmp = A[j – 1];
A[j – 1] = A[j];
A[j] = tmp;
}
}
}
}
// 1.2 快速排序,它的平均时间复杂度为O(Nlog2N)
最好的是数组有序情况下时间复杂度为:O(nlogn),
平均是正常随机乱序时平均时间复杂度为:O(nlogn)。 ,
最差的是数据完全乱序O(n^2)。
int Partition(int *arr, int low, int high)
{
int pivot = arr[low];
while(low < high)
{
while(low < high && arr[high] <= pivot) high–;
arr[low] = arr[high];
while(low < high && arr[low] >= pivot) low++;
arr[high] = arr[low];
}
arr[low] = pivot;
return low;
}
void Qsort(int *arr, int low, int high)
{
if (low < high)
{
int mid = Partition(arr, low, high);
Qsort(arr, low, mid – 1);
Qsort(arr, mid + 1, high);
}
}
// 【2】 数组取最大值 算法
最好情况下,最大值在第1个,时间复杂度为:O(n^2)
平均是,最大值在中间位置,时间复杂度:O(n).
最差是,最大值在末尾,时间复杂度:O(2^n)
int max(int array[],int n);
void main( )
{
int num[N],count,i,val;
? scanf("%d",&count);
for (i=0;i<count;i++)
{
scanf("%d",&num[i]);
}
val=max(num,count);
printf("%dn",val);
}
int max(int array[ ],int n)
{
if (n<=1)
return(array[0]); // 就1个数,最大值就是自已
int t=max(array+1,n⑴); // 求后面 n⑴个数的最大值
if (t>array[0]) // t 比第1个大,返回最大 t
return(t);
else
return(array[0]); // t小,返回array[0];
}
// 【3】 数组查询是不是包括某个值
最好情况下,就是第1个,时间复杂度为O(1);
平均情况下,值在中间,时间复杂度为0(N/2);
最坏情况下,值在末尾或不存在,时间复杂度为O(N);
int main()
{
int n,m,i,a[20];
int find;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
scanf("%d",&m);
find = ⑴;
for(i=0;i<n;i++){
if(a[i] == m){
find = i;
break;
}
}
if(find < 0) {
printf("Non");
}
else {
printf("%dn", find);
}
return 0;
}
// 【4】数组输入输出,1时没有想到用甚么算法,顺序遍历?
——––——-—————————————————————––——————————
<版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!>
原博客地址: http://blog.itpub.net/26230597/viewspace⑴386607/
原作者:黄杉 (mchdba)
——––—–—————————————————————————————————
波比源码 » C语言之数组
levofloxacin without prescription levofloxacin 500mg sale
order avodart sale order ondansetron generic oral ondansetron
purchase aldactone for sale order finasteride purchase fluconazole online cheap
ampicillin 250mg cost cephalexin usa erythromycin online order
buy sildenafil 50mg buy nolvadex 20mg robaxin cheap
oral sildenafil 50mg buy estradiol without prescription order estrace generic
cheap lamotrigine 50mg order lamictal 50mg buy tretinoin gel
buy tadalafil 10mg purchase avanafil online cheap diclofenac 100mg uk
buy generic accutane 20mg isotretinoin 40mg brand cost azithromycin
indomethacin ca order terbinafine 250mg generic buy generic amoxicillin
buy cialis canada how to overcome ed viagra 100mg uk
order generic arimidex 1mg Rx generic viagra cost sildenafil 100mg
order prednisone 5mg generic purchase viagra for sale sildenafil drug
original cialis 20mg rezeptfrei sicher kaufen sildenafil 50mg bestellen sildenafil 200mg generika
buy accutane sale buy amoxicillin for sale stromectol cvs
order modafinil 100mg generic order acetazolamide 250 mg online cheap diamox 250mg price
brand doxycycline 200mg buy levitra 10mg sale cost furosemide
buy buspirone 5mg pill purchase oxybutynin online oxybutynin 2.5mg us
terazosin 5mg for sale order generic hytrin 1mg buy azulfidine 500 mg sale
order fosamax generic order panadol 500 mg without prescription famotidine 40mg us
order generic benicar order depakote pills diamox 250mg generic
buy imdur 40mg without prescription buy isosorbide micardis pills
order zyban 150mg without prescription buy zyrtec pills quetiapine 50mg cheap
order molnupiravir molnunat 200 mg without prescription buy generic lansoprazole 15mg
cialis for women buy viagra online without a prescription buy sildenafil pills
avlosulfon 100 mg without prescription order aceon 8mg sale buy aceon generic
order provera 5mg pills buy biltricide 600 mg online cheap order periactin 4 mg sale
order modafinil for sale online pharmacy non prescription drugs stromectol
buy luvox 100mg generic order glucotrol 5mg sale glipizide 10mg pills
cost isotretinoin 40mg amoxicillin 250mg uk buy deltasone 20mg online cheap
furosemide 100mg over the counter doxycycline without prescription order hydroxychloroquine 200mg online
glucophage 1000mg brand metformin over the counter tadalafil 10mg pills
order zyprexa 10mg bystolic pills valsartan 160mg pill
purchase amlodipine for sale order amlodipine pill cialis next day delivery
clozapine brand combivent 100mcg pill decadron without prescription
sildenafil 100mg over the counter order lisinopril 2.5mg lisinopril 2.5mg pills
linezolid uk roulette wheel online real casino slots online
prilosec over the counter free slot play online blackjack for real money
lopressor online metoprolol pills order levitra sale
online thesis writing online roulette free poker online free
buy levitra generic purchase levitra methylprednisolone 8 mg oral
order clomid 100mg without prescription order clomiphene online cheap free spins no deposit required
order cialis pills oral sildenafil 50mg purchase viagra sale
generic orlistat 120mg diltiazem price generic acyclovir 400mg
order cialis 20mg sale clopidogrel 150mg usa plavix sale
buy motilium 10mg without prescription cyclobenzaprine cheap brand flexeril
baclofen 10mg ca toradol uk ketorolac for sale
zantac 300mg generic celecoxib 100mg sale buy celecoxib generic
online casino real poker online casino slots free
tadalafil 20mg brand ciprofloxacin 1000mg ca cipro oral
zocor 10mg oral purchase finasteride sale buy proscar 5mg sale
order keflex 125mg online cheap buy cleocin 150mg pill buy generic erythromycin
ceftin 500mg cost cost bimatoprost order methocarbamol generic
casino online slots cialis 40mg us cialis coupons
trazodone 50mg uk order sildenafil 50mg without prescription aurogra over the counter
sildenafil 100mg price female viagra sildenafil lamotrigine order online
order generic deltasone 20mg order accutane 10mg amoxil 500mg for sale
slot casino sexual dysfunction cialis for sale
buy zithromax 500mg for sale cheap azithromycin buy neurontin online
gambling addiction provigil 100mg canada purchase modafinil generic
order sildenafil 100mg sale order generic fildena order rhinocort pill
deltasone 20mg us mebendazole buy online mebendazole cheap
retin gel oral tadalis 10mg ca avanafil 200mg tablet
naproxen 500mg cost cefdinir 300mg brand buy lansoprazole for sale
order tiotropium bromide 9mcg for sale buy hytrin 5mg pill hytrin brand
singulair 5mg price sildenafil pills 25mg viagra 50mg over the counter
cost tadalafil 10mg Sales cialis cialis 20mg cheap
purchase cialis without prescription Cialis daily best online blackjack real money
free online poker games online casinos usa casino games free
helpwithassignment arava 20mg pill buy sulfasalazine
order acetazolamide 250mg pills order diamox 250 mg for sale imuran sale
purchase lanoxin purchase molnunat for sale molnupiravir brand
buy coreg 25mg generic generic elavil 50mg buy elavil 10mg online
dapoxetine cheap order domperidone online cheap domperidone 10mg brand
indocin 75mg tablet flomax 0.4mg ca purchase cenforce without prescription
buy pepcid generic buy tacrolimus 5mg pill order generic mirtazapine 30mg
buy fenofibrate 200mg generic buy viagra 50mg generic buy viagra 50mg online
buy tadalafil 40mg online Overnight delivery cialis us viagra sales
buy minocycline online cheap buy minocycline 50mg pills terazosin 5mg pills
buy cialis 10mg online levitra visa pills for erection
provigil 200mg sale order modafinil without prescription generic promethazine 25mg
buy clomiphene 100mg clomid order prednisolone 40mg over the counter
accutane 40mg drug buy acillin for sale buy acillin
order fildena for sale proscar 1mg price order finasteride 1mg online
ivermectin cream 1 buy ed pills uk order deltasone 20mg without prescription
zofran online buy oral trimethoprim cost bactrim 960mg
order modafinil generic zestril 2.5mg price order lopressor 100mg generic