日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第三周项目4(2)-顺序表应用 将所有奇数移到所有偶数前面

發(fā)布時間:2025/4/16 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第三周项目4(2)-顺序表应用 将所有奇数移到所有偶数前面 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
/* copyright (t) 2016,煙臺大學(xué)計算機學(xué)院 *All rights reserved. *文件名稱:1.cpp *作者:邵雪源 *完成日期:2017年9月19日 *版本號:v1.0 *問題描述:將所在奇數(shù)移到所有偶數(shù)的前面,要求算法的時間復(fù)雜度為O(n),空間復(fù)雜度為O(1)。 *輸入描述:線性表長度、線性表中各元素 *程序輸出:調(diào)整順序后的線性表 */ #include <iostream> #include <malloc.h> #include <cstdio> using namespace std; #define Maxsize 100 typedef int Elemtype; //自定義數(shù)據(jù)類型 typedef struct list {Elemtype data[Maxsize]; //存順序表元素int length; //存順序表長度 } Sqlist; void CreateList(Sqlist *&l,Elemtype a[],int n) //由a中的n個元素建立順序表 {int i;l=(Sqlist *)malloc(sizeof(Sqlist)); //分配存儲空間for(i=0;i<n;i++)l->data[i]=a[i]; //存放元素l->length=n; //設(shè)置長度 } void DispList(Sqlist *l) //輸出線性表 {int i;for(i=0;i<l->length;i++)printf("%d ",l->data[i]);printf("\n"); } void movejs(Sqlist *&l) //移動奇數(shù) {int i=0,j=l->length-1;Elemtype t;while (i<j){while ((i<j) && (l->data[j]%2==0)) //從右往左遍歷找第一個奇數(shù)j--;while ((i<j) && (l->data[i]%2==1)) //從左往右遍歷找第一個偶數(shù)i++;if (i<j) //如果未到達“分界線”,將上述循環(huán)中找到的奇數(shù)和偶數(shù)交換{t=l->data[i];l->data[i]=l->data[j];l->data[j]=t;}} }int main() {int i,Llength;Sqlist *l;Elemtype a[Maxsize];printf("請輸入線性表長度:\n");scanf("%d",&Llength);printf("請輸入線性表中各元素:\n");for(i=0;i<Llength;i++)scanf("%d",&a[i]);CreateList(l,a,Llength);movejs(l);DispList(l);return 0; } //移動奇數(shù)

總結(jié)

以上是生活随笔為你收集整理的第三周项目4(2)-顺序表应用 将所有奇数移到所有偶数前面的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。