c语言冒泡排序获取最小值,C语言【顺序表】冒泡排序,一次选出最大最小的数据,二分查找,初始化顺序表...

#define _CRT_SECURE_NO_WARNINGS 1

#include

#include

#include

#include

#define MAX_SIZE 5

typedef int DataType;

typedef struct SeqList

{

size_t size;

DataType array[MAX_SIZE];

}SeqList;

//冒泡排序

//void swap(DataType *left, DataType *right)

//{

//    DataType tmp = *left;

//    *left = *right;

//    *right = tmp;

//}

//

//void BubbleSort(SeqList* pSeq)

//{

//    int i = 0;

//    int j = 0;

//    int flag = 0;

//    assert(pSeq);

//    for (i = 0; i size - 1; i++)

//    {

//        for (j = 1; j size - i; j++)

//        {

//            if (pSeq->array[j - 1]> pSeq->array[j])

//            {

//                swap(&pSeq->array[j - 1], &pSeq->array[j]);

//                flag = 1;

//            }

//        }

//        if (flag == 0)

//        {

//            return;

//        }

//    }

//}

//

//void Test1()

//{

//    SeqList List;

//    BubbleSort(&List);

//}

//

//int main()

//{

//    Test1();

//    system("pause");

//    return 0;

//}

// 一次选出最大最小的数据分别放在序列的两端

//void SeclectSort(SeqList* pSeq)

//{

//    int i, j;

//    int min;

//    assert(pSeq);

//    for (j = 0; j size - 1; ++j)

//    {

//        min = j;

//        for (i = j + 1; i size; ++i)

//        {

//            if (pSeq->array[min] > pSeq->array[i])

//            {

//                min = i;

//            }

//        }

//        Swap(&pSeq->array[min], &pSeq->array[j]);

//    }

//}

//

//void SeclectSort_OP(SeqList* pSeq)

//{

//    int left = 0, right = pSeq->size - 1;

//    int min, max, i;

//    assert(pSeq);

//

//    while (left 

//    {

//        for (i = left; i <= right; i++)

//        {

//            if (pSeq->array[i] array[left])

//            {

//                Swap(&pSeq->array[i], &pSeq->array[left]);

//            }

//

//            if (pSeq->array[i] > pSeq->array[right])

//            {

//                Swap(&pSeq->array[i], &pSeq->array[right]);

//            }

//        }

//

//        ++left;

//        --right;

//    }

//}

//void Test2()

//{

//    SeqList List;

//    SeclectSort(&List);

//    SeclectSort_OP(&List);

//}

//

//int main()

//{

//    Test2();

//    system("pause");

//    return 0;

//}

//

//int BinarySearch(SeqList* pSeq, DataType x)

//{

//    int left = 0;

//    int right = pSeq->size;

//    assert(pSeq);

//    while (left <= right)

//    {

//        int mid = left - (left - right) / 2;

//        if (x > pSeq->array[mid])

//        {

//            left = mid + 1;

//        }

//        else if (x array[mid])

//        {

//            right = mid - 1;

//        }

//        else

//        {

//            return mid;

//        }

//    }

//    return -1;

//}

//

//void Test3()

//{

//    SeqList List;

//    BinarySearch(&List, 5);

//}

//int main()

//{

//    Test3();

//    system("pause");

//    return 0;

//}

//void InitSeqList(SeqList* pSeq)

//{

//    assert(pSeq);

//    memset(pSeq->size, 0, sizeof(DataType)*MAX_SIZE);

//    pSeq->size = 0;

//}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值