• 20162302 《程序设计与数据结构》第五周学习总结


    20162302 2017-2018-1 《程序设计与数据结构》第五周学习总结

    教材学习内容总结

    熟悉栈的结构
    用数组实现栈
    用链表实现栈
    将栈应用到android开发

    教材学习中的问题和解决过程

    • 问题1:在用数组实现栈的时候如何解决空间不足的问题

    • 问题1解决方法: 可以写一个私有方法用于扩充数组容量:建立一个比原来大的数组并把数据移动到里面。

    private void expandCapacity() {
            T[] larger = (T[])(new Object[stack.length*2]);
            for (int index=0; index < stack.length; index++)
                larger[index] = stack[index];
            stack = larger;
        }
    
    • 问题2:在用链表实现的栈里面,不能像数组一样通过序号来直接得到指定位置的数据,那么寻找特定位置的数据
    • 问题2解决方法:创建一个get方法通过for循环来循环得到需要的数据
    private code get(int givenPosition) {
                if (!isEmpty() && 1 <= givenPosition && givenPosition <= count){
                    System.out.println("Error");
                    return null;
                } else {
                code currentNode = first;
                for (int i = 1; i < givenPosition; i++) {
    
                    currentNode = currentNode.next;
                }
                assert currentNode != null;
                return currentNode;
            }
     }
    

    代码调试中的问题和解决过程

    在android开发方面还不是很熟练,遇到过方方面面的问题

    • 问题1:使用LinearLayout结构的时候控件排成一列,很不美观
    • 解决方案:在原有的LinearLayout里面再镶嵌一个LinearLayout,并将按钮放到里面(代码经过简化处理)
    <LinearLayout >
    
        <TextView/>
    
        <TextView/>
    
        <EditText/>
    
        <TextView/>
    
        <LinearLayout>
    
            <Button/>
    
            <Button/>
    
        </LinearLayout>
    
        <TextView/>
    
    </LinearLayout>
    

    界面预览:

    • 问题2:怎样给按键加上动画效果
    • 解决方案:通过对Android中简单的Button设计的参考,我在drawable文件夹里面创建了一个bottons的xml文件,里面对button的颜色进行了简单的设计,即平时的颜色和按下的颜色。对于颜色的html表示不熟悉可以通过html颜色代码查找到自己需要的颜色。
    <?xml version="1.0" encoding="utf-8"?>
            <selector xmlns:android="http://schemas.android.com/apk/res/android" >
                <item  android:state_pressed="true">
                    <shape>
                        <solid
                            android:color="#708090"/>
                    </shape>
                </item>
                <item >
                    <shape>
                        <solid
                            android:color="#1E90FF"/>
                    </shape>
    
                </item>
    </selector>
    
    • 问题3:按键在设置完成无法执行按下后的指令
    • 解决方案:需要声明add.setOnClickListener(this);
    • android开发完成效果图

    代码托管

    结对及互评

    • 博客中值得学习的或问题:
      • 叙述的问题很清晰,讲解很仔细
      • 代码过于详细
      • 结构清晰

    本周结对学习情况

    • 20162329

    • 结对学习内容:
      没有进行系统的结对学习

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 0/0 1/1 10/10
    第二周 ??/?? 1/2 15/25
    第三周 465/465 1/3 15/40
    第四&五周 443/908 3/7 40/80

    参考资料

  • 相关阅读:
    noip模拟赛 寻宝之后
    noip模拟赛 剪纸
    noip模拟赛 天天和不可描述
    noip模拟赛 罪犯分组
    noip模拟赛 天天寄快递
    Uva10562
    Uva10305 Ordering Tasks
    Uva 816 Abbott's Revenge
    Uva1103 Ancient Messages
    Uva297 Quadtrees
  • 原文地址:https://www.cnblogs.com/yangjingdian/p/7672722.html
Copyright © 2020-2023  润新知