zoukankan      html  css  js  c++  java
  • 博客作业2---线性表

    一、PTA实验作业

    1. 顺序表删除重复元素

    2.设计思路

    建表:如果输入个数为0直接退出程序;否则把每一个a[i]赋值给L->data,最后给长度赋值n
    展示:
    for i=0 to L->length-1{
    	if 最尾部的数{
    	  输出L->data[i] 
    	} 
    	else{
    		输出L->data[i]和" " 
       }
    }
    删除相同元素:
    for i=1 to L->length-1{
        k=0;
        while(k<=j且两个data不相同){
        	k自增; 
    	} 
    	if(k>j) 把L->data[i]改值为L->data[++j] 
    } 
       长度重新定义为j+1 
        
    
    

    3.代码截图

    4.PTA提交列表说明。

    • 0分的答案错误是输出的结果是3个乱码,输出的结果完全错误,认真再看一遍书本发现建表函数中并没有把输入的内容接到链表上而只是简单的给L申请空间和给L->length赋值
    • 第二个错误是空表的情况,没有做特殊情况考虑,如果是空表让程序直接退出

    1. 单链表逆置

    2.设计思路

    建表:
    为L申请空间 
    L->next置空
    p保存头指针L
    for i=1 to n{
       为s申请空间 
       输入k赋值给s->data
       用尾插法将s节点插入p之后  
    } 
    倒置:
    p保留L->next
    L->next 置空重构链表
    while(!p){
    	头插法重构 
    } 
    输出:
    除最后一个元素外其他其他于是输出带空格
    
    

    3.代码截图


    4.PTA提交列表说明。


    上课老师有说过类似题目

    1. 两个有序链表序列的合并

    2.设计思路

    建表:
    尾插法建表
    合并:
    p1=l1->next;
    p2=l2->next;
    p=L;
    while(p1和p2都没有指向NULL){
    	if(p1->data<p2->data){
    		s->data= p1->data
    		尾插法把s节点插入p之后 
    		p1下移 
    	} 
    	else{
    	    s->data= p2->data
    		尾插法把s节点插入p之后 
    		p2下移 
    	} 
    } 
    while(p1){
    	把剩下的元素节点依次接入p 
    } 
    while(p2){
    	把剩下的元素节点依次接入p 	
    } 
    p->next=NULL;
    输出:
    除最后一个元素外其他其他于是输出带空格
    
    

    3.代码截图




    4.PTA提交列表说明。


    第一次错误10分,只有样例正确,3个测试点错误,链表为空也没有考虑,然后就是有并列,我仔细再看一遍题目发现题目要求是把两个链表合并,并不用删掉重复元素,去掉删除函数。
    还有就是大规模输入,自己不懂错误在哪 ,尝试这把两个数组的长度加大也没有用

    二、截图本周题目集的PTA最后排名

    1.顺序表PTA排名

    2.链表PTA排名

    3.我的总分:

    • 155

    三、本周学习总结

    1.谈谈你本周数据结构学习时间是如何安排,对自己安排满意么,若不满意,打算做什么改变?

    计划是要从周一开始每天拨出一点时间做一题pta哪怕是一个函数也好,可是每天只有晚上有时间,而晚上还要晚自习,也有其他作业要写,所以只是再周三写了一点pta,其他的基本再周末做的,总感觉时间没有规划好。不是很满意。下周尽量能够再晚上之前把其他作业做完,然后选择性完成pta内容

    2.谈谈你对线性表的认识

    • 线性表是由0个或多个元素的有穷序列,其特点操作灵活,其长度可以增长缩短
    • 线性表具有均匀性和有序性,均匀性表现在同一线性表的各个数据元素必定既有相同的数据类型和长度,有序性表现在各个数据在线性表都有自己的位置,而且数据之间的相对位置是线性
    • 线性表根据存储结构 分成顺序表和列表,在元素插入,删除,排序方面各有各的特点

    3.代码Git提交记录截图

  • 相关阅读:
    校验文件数字签名的合法性(VerifyPE)
    windbg help
    VIM的常用操作
    使用Jsonp解决跨域数据访问问题
    Linux下不同文件编码的转换
    Segoe Font 介绍
    关于框架的一些思考
    Linux下Aptana Plugin For Eclipse的破解
    增强网站易用性的10个设计技巧
    Firebug中的console tab使用总结
  • 原文地址:https://www.cnblogs.com/soyam/p/8646713.html
Copyright © 2011-2022 走看看