题解 | #编写函数实现两数交换(指针方式)#

牛牛的排序

http://www.nowcoder.com/practice/26a0c92e9266443887a3bf81aff8e188

```void sort(int *array,int n) //冒泡排序法
{
    for(int i=0;i<n-1;i++)
    {
        for(int j=0;j<n-i-1;j++)
        {
            if(array[j]>array[j+1])
            {
                array[j]^=array[j+1]^=array[j]^=array[j+1];//无需第三值异或交换法(自己起的名)
            }
        }
    }
}
int main()
{
   int n;
    scanf("%d",&n);
    int a[n];
    for(int i=0;i<n;i++)//输入数组
        scanf("%d",&a[i]);
    sort(a,n);//交换
    for(int i=0;i<n;i++)//输出数组
        printf("%d ",a[i]);
}
全部评论

相关推荐

点赞 评论 收藏
分享
在写周报的打工人很独...:这个笔试昨天晚上做了一下,真难啊,前后端,ai全有
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务