2020年2月28日学习日志

8.30-10.30
背单词+背范文 +英语课试课 (2小时)
在这里插入图片描述
在这里插入图片描述
10.30-11.30 (1小时)
用记事本写代码真的不方便,但确实有得到锻炼,(输入中文之后没有换成英文的,运行的时候就一直错误,改过来之后又没有保存(以为会自动保存,是我憨了),然后继续错,就搞了好久才搞对。写打印菱形的那个循环,格式不和cd上一样,很不习惯也搞了挺久的。。。
在这里插入图片描述
在这里插入图片描述
13.00-17.00
写PTA (4小时)
在这里插入图片描述
在这里插入图片描述
…(中间错了N,就没有截图了)
在这里插入图片描述
这个题我也写了挺久的,链表总能把我搞晕,一下又是指针没有移动,一下又是没有NULL,问了同学,才慢慢解决,之前一直搞不懂什么时候要开辟新空间,所以这次就每个指针都开了(这样就浪费空间了),然后热心同学告诉我,当一个指针没有指向已存在的空间时,才需要开辟新空间(这是我对他的话所理解的,应该是没错吧。。)。

List Merge( List L1, List L2 )
{
    List p1,p2,t,L;
    p1=(List )malloc(sizeof(List));
    p2=(List )malloc(sizeof(List));
    t=(List )malloc(sizeof(List));
    L=(List )malloc(sizeof(List));
    p1=L1->Next;
    p2=L2->Next;
    L->Next=NULL;
    t=L;
    if(L1==NULL&&L2==NULL)
        return L;
    else
    {
        while(p1!=NULL&&p2!=NULL)
        {
            if(p1->Data<=p2->Data)
            {
                t->Next=p1;
                t=p1;
                p1=p1->Next;
            }
            else if(p1->Data>p2->Data)
            {
                t->Next=p2;
                t=p2;
                p2=p2->Next;
            }
        }
        while(p1!=NULL)
        {
            t->Next=p1;
            p1=p1->Next;
            t=t->Next;
        }
        while(p2!=NULL)
        {
            t->Next=p2;
            p2=p2->Next;
            t=t->Next;
        }
        L1->Next=NULL;
        L2->Next=NULL;
        t->Next=NULL;
        return L;
    }
}

在这里插入图片描述
在这里插入图片描述
(你没看错,就是这么简单的题我都错了好多次,一开始是把h>=TOL写在while的括号里,后来发现跳出循环会晚一步,我快颠了。。。)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这个题,一开始,我是边找边从后往前移动线性表的,提交就会运行超时,后来灵光一现,我直接把区间外的存进线性表就好了,而且时间复杂度比之前的方法低好多,我总是把问题复杂化。。。

List Delete( List L, ElementType minD, ElementType maxD )
{
    int cnt=0;
    for(int i=0;i<=L->Last;i++)
    {
        if(L->Data[i]<=minD||L->Data[i]>=maxD)
        {
            L->Data[cnt++]=L->Data[i];
        }
        else
        continue;
    }
    L->Last=cnt-1;
    return L;
}

在这里插入图片描述
这又是一个让我错了很多次的题(哭),也不是难题,我的思路是,先用cnt记录又记个结点,然后在判断倒数第m个与cnt的关系,用flag记住,然后遍历链表,到flag就return;
我是错在了flag的值求错了,一直觉得要加一,后来问了张同学(zai),才解决这个问题(此处感谢张同学!)
在这里插入图片描述
在这里插入图片描述

ElementType Find( List L, int m )
{
    List p,q;
    p=L->Next;
    int cnt=1;
    while(p!=NULL)
    {
        p=p->Next;
        cnt++;
    }
    int flag=cnt-m;
    if(flag<=0)
    {
        return ERROR;
    }
    if(flag>0)
    {
        q=L->Next;
        for(int i=1;q!=NULL;i++)
        {
            if(i==flag)
            {
                return q->Data;
            }
            else
            q=q->Next;
        }
    }
}

19.00-20.15
看Java并做笔记 (1小时)
今天看了一部分字符串的内容,看的时候都会和C做对比,很多地方确实Java要方便一点,比如说截取字符串片段,或者是连接多个字符串等都要比C 方便些,Java牛批!
Java字符串笔记

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值