暑期第三天

来源:互联网 发布:模特接单软件 编辑:程序博客网 时间:2024/06/08 14:01

完成任务

1.java的异常练习(毕向东第十天结束)
2.三种排序的比较

收获

1.父类只写了带参的构造函数,子类中要写明super(参数),或者父类中要有无参的构造函数
2.throw 单独出现时下面的语句写了也没用
3.多个catch存在时,父类要在最下面
4.

桶排

优点:速度快

缺点:浪费内存,只能处理整数

思想:标记的思想

# include <stdio.h>int main (){    int i,j,k,book[1001]={0};    int n ;    scanf("%d",&n);    for (i = 0 ; i < n ; i ++)    {        scanf("%d",&k);        book[k]++;    }    for (i = 1000 ; i >=0 ; i--)        for (j = 1 ; j<=book[i] ; j ++)        printf("%d ",i);    return 0;}

冒泡

优点:可以对小数进行排序

缺点:耗时

思想:相邻交换

# include <stdio.h>int main(){    int n;    scanf("%d",&n);    int i,j,k;    int a[n];    for (i = 0 ; i < n ; i ++)        scanf("%d",&a[i]);    for (i = 0 ; i < n-1 ; i ++)        for (j = 0 ; j < n-1 ; j++)    {        if(a[j] < a[j+1])        {            k = a[j];            a[j] = a[j+1];            a[j+1] = k;        }    }    for ( i = 0 ; i <  n ; i ++)        printf("%d ",a[i]);    return 0;}

快排

优点:耗时少,消耗内存少

思想:二分

通过找到基准数,然后将基准数左边设置为全部为小于基准数,右边设置为全部为大于基准数,依次对基准数左右进行操作,最终得到结果

# include <stdio.h>int a[101],n;void qs (int left , int right){    if (left > right)        return ;    int i,j,k,t;    t= a[left];    i = left;    j= right;    while(i != j)    {        while(a[j]>= t && i<j)            j--;        while(a[i]<= t && i<j)            i++;        if (i < j )        {            k = a[i];            a[i] = a[j];            a[j] = k;        }    }    a[left] = a[i];    a[i] = t;    qs(left , i -1);    qs(i+1 , right);}int main(){    int n;    scanf("%d",&n);    int i , j , k;    for (i = 0 ; i <  n ; i  ++)        scanf("%d",&a[i]);    qs(0,n-1);    for (i = 0 ; i < n ; i ++)        printf("%d ",a[i]);    return 0;}

心得

努力不是你的资本,产出才是,很多时候你只是看起来很努力,然而产出却很少,要想要产出可视化,最后的总结便是直观的体现

两个小时可以做完的事情,何必拖一天,显得自己很努力?获取你一天的产出都没有两个小时多。

原创粉丝点击