严蔚敏版数据结构算法2.2

来源:互联网 发布:小金猪装饰预算软件 编辑:程序博客网 时间:2024/05/06 20:31
#include <iostream>#include<vector>using namespace std;typedef int element;#define maxsize 100typedef struct {    element aa[maxsize];    int last;}sqlist;void merglist(sqlist *la, sqlist * lb, sqlist *lc) {    int i = 0, j = 0, k = 0;    while ((i <= la->last) && (j <= lb->last))    {        if (la->aa[i] <= lb->aa[j]) {            lc->aa[k] = la->aa[i];            i++;            k++;        }        else {            lc->aa[k] = lb->aa[j];            j++;            k++;        }    }    while (i<=la->last)    {        lc->aa[k] = la->aa[i];        i++;        k++;    }    while (j<=lb->last)    {        lc->aa[k] = lb->aa[j];        i++;        k++;    }    lc->last = la->last + lb->last + 1;}int main(){    int len, i;    sqlist *la, *lb, *lc;    la = (sqlist*)malloc(sizeof(sqlist));    cout << "输入链表a的长度:" << endl;    cin >> len;    la->last = len - 1;    cout << "输入元素:" << endl;    for (i = 0; i < len; i++)        cin >> la->aa[i];    lb = (sqlist*)malloc(sizeof(sqlist));    cout << "输入链表b的长度:" << endl;    cin >> len;    lb->last = len - 1;    cout << "输入元素:" << endl;    for (i = 0; i < len; i++)        cin >> lb->aa[i];        lc = (sqlist*)malloc(sizeof(sqlist));        merglist(la, lb, lc);        for (i = 0; lc->last < len; i++)            cout << lc->aa[i] << " ";            cout << endl;            return 0;    }
0 0
原创粉丝点击