计算机二级(六)

  1. 循环队列(易错):front=rear即头指针和尾指针相等,但是对应两种情况:一种是队列是空,一种是队列是满。
  •  当rear大于front时,循环队列的长度:rear-front 

  • 当rear小于front时,循环队列的长度:分为两部分计算 0+rear   和   Quesize-front  ,  将两部分的长度合并到一起即为: rear-front+Quesize

  1. 单元测试也称模块测试,模块是软件设计的最小单位,单元测试是对模块进行正确性的检验,以期尽早发现各模块内部可能存在的各种错误,通常在编码阶段进行。

  2. 数据模型所描述的内容包括三个部分:数据结构数据操作、数据约束

  3. 除法 / 总是返回一个浮点数。

  4. 除法//根据除数和被除数来决定。

  5. 当min比较的是字典时,把key和value看成了一个整体,所以表现出的作用就是只比较的key的大小,返回值也是字典的键。
  6. Python中一切皆对象,每个对象都有其唯一的id,对应的类型和值,其中id指的是对象在内存中的位置。根据对象的值是否可修改分为可变对象和不可变对象。其中,

    不可对象包括:数字,字符串,tuple

    可变对象包括:list,dict,set

    Python中的变量可以指向任意对象,可以将变量都看成是指针,保存了所指向对象的内存地址(对象的内存地址(对象的引用)。

  7. sorted()默认是按照升序排列,并且是按照ASCII码表的顺序排列的,

    将字典直接传入到sorted函数中 ,sorted函数会默认根据字典的键k对字典进行排序,同时只取字典的键k的内容,并以列表的形式返回

  8. 直接导址中指令的地址码部分给出的是作数的真正地址,间接导业是相当于直接寻址而言的,指今的地处码给出的不是作数的真正地址,而是操作数有效地址所在的存储单元的地址,也就是操作数地址的地址。
  9. 关于栈一直理解不好,该篇讲的透彻(29 封私信 / 81 条消息) 设栈的存储空间为S(1:m),初始状态为top=m+1 怎么理解? - 知乎 (zhihu.com)
  10.  循环队列本身是一种顺序存储结构,而循环列表是一种链式存储结构。 两者之间是平级关系。 线性链表是线性表的链式存储结构,包括单链表,双链表,循环链表等。 队列的顺序存储结构一般采用循环队列的形式。 循环队列的操作是按数组取摸运算的,所以是顺序存储,而循环链表本身就是收尾相连的,所以循环链表不是循环队列,两种不同的存储结构,虽然实现的功能是一样的,实现循环两种方式 顺序存储就是循环队列,链式存储就是循环链表。
  11. str = "Line1-abcdef \nLine2-abc \nLine4-abcd"; print str.split( ); # 以空格为分隔符,包含 \n print str.split(' ', 1 ); # 以空格为分隔符,分隔成两个
  12. format一定要知道的:format()方法的基本使用 - 知乎 (zhihu.com)
  13. 经常会看到类似于 [i for i in range(1,10)] 的表达式,这种表达式称为列表解析(List Comprehensions),类似的还有字典解析、集合解析等等。
    #请完善如下代码
    #在______填入语句
    a, b, c = [int(x) for x in input().split(',')]
    ls = []
    for i in range(c):
        ls.append(a+(b*i))
    print(ls)
    

  14. 关于字符串的replace方法

该方法的作用是替换字符串中所有指定的字符,然后生成一个新的字符串。经过该方法调用以后,原来的字符串不发生改变。例如:
String s = “abcat”;
String s1 = s.replace(‘a’,‘1’);
该代码的作用是将字符串s中所有的字符a替换成字符1,生成的新字符串s1的值是“1bc1t”,而字符串s的内容不发生改变。

1.二叉树的 性质

(99条消息) 二叉树的5个性质_咖啡与乌龙的博客-CSDN博客_二叉树的性质


面向对象的程序设计

2.1面向对象方法的基本概念

六个基本概念: 对象 、类和实例、消息、继承、多态性

面向对象基本方法的基本概念有对象、类和实例、消息、继承与多态性

向对象设计方法主要特征对象、类和实例、消息、继承与多态性

对象的基本特点:标识唯一性,分类性,多态性,封装性,模块独立性好。

1、对象

对象:是面向对象方法中最基本的概念。

是系统中用来描述客观事物的一个实体,它由一组静态的特征和它可执行的一组操作组成

属性即对象所包含的信息

对象有如下一些基本特点:标识唯一性、分类性、多态性、封装性、模块独立性好。

对象的基本特点 

特点描述
标识唯一性一个对象通常 由对象名、属性和操作三部分组成
分类性将有相同属性和操作的对象抽象成类
多态性同一个操作可以是不同对象的行为,不同对象执行同一个操作产生不同中的结果
封装性从外部只能看到对象的外部特性,对象的内部对处是不可见的
模块独立性好完成对象功能所需的元素都封装在对象内部模块独立性好

多态性是指同一个操作可以是不同对象的行为

封装性是指从外面看只能看到对象的外部特征,而不知道也无须知道数据的具体结构以及实现操作

封装是指隐藏对象的属性和实现细节将数据和操作结合于统一体,仅对外提供访问方式

对象是由数据和操作组成的封装体,与客观实体有直接的对应关系。对象之间通过传递消息互相联系,以模拟现实世界中不同事物彼此之间的关系。面向对象技术的3个重要特性为:封装性、继承性和多态性,其中封装性有助于对象的信息隐蔽。

2、类和实例

类:具有共同属性、共同方法的对象的集合, 反映属于该对象类型的所有对象的性质[可具体可抽象] 类是关于对象性质的描述

实例: 一个具体对象是其对应类的一个实例[具体对象]

面向对象开发方法中,类与对象的关系是抽象与具体

3、消息

对象间的通信靠消息间传递 对象之间进行通信的构造叫作消息

4、继承

继承是指能直接获得已有的性质和特征,不必重复定义它们
继承是面向对象的方法的一个主要特征,是使用已有的类的定义作为基础建立新类的定义技术。广义的说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们,所以说继承是指类之间共享属性和操作的机制。

继承的传递性

优点:相似的对象 可以共享程序代码和数据代码,提高软件的可重用性

对象不一定 有继承性

2.3.2优点

l 与人类习惯的思维方法一致

l 稳定性好

l 可重用性好

l 容易开发大型软件产品

l 可维护性好

习题

在面向对象的方法中,实现信息隐蔽的是依靠对象的封装

对象不一定有继承性

面向对象技术的3个重要特性是:封装性、继承性和多态性


3.逻辑模型

逻辑模型是将概念模型转化为具体的数据模型的过程 , 即按照概念结构设计阶段建立的基本 E-R 图 , 按选定的管理系统软件支持的数据模型 (层次/网状/关系/面向对象) , 转换成相应的逻辑模型 , 这种转换要符合关系数据模型的原则 ;

分多少个主题 , 每个主题包含的实体
每个实体的属性都有什么
各个实体之间的关系是什么
各个实体间是否有关系约束
比 概念模型多了 实体的 主外键 实体之间的关系
————————————————
原文链接:https://blog.csdn.net/u010520724/article/details/125005842

4.字符串比较大小

字符比较(character comparison)是指按照字典次序对单个字符或字符串进行比较大小的操作,一般都是以ASCII码值的大小作为字符比较的标准。

字符串比较的时候,字符串的大小是从最左边第一个字符开始比较,大者为大,小者为小,若相等,则继续比较后面的字符;

比如ABC与ACDE比较,第一个字符相同,继续比较第二个字符,由于第二个字符是后面一个串大,所以不再继续比较,结果就是后面个串大。再如ABC与ABC123比较,比较三个字符后第一个串结束,所以就是后面一个串大。

所以,长度不能直接决定大小,字符串的大小是由左边开始最前面的字符决定的。

字符串如何比较大小?-常见问题-PHP中文网

5. 程序设计IPO模式

  • 23
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值