Page 76 - 高中 信息技术 选择性必修1 数据与数据结构
P. 76

第三章  线性数据的组织和存储







                           方案一:改造“主食材”数据项为“食材编码”,在食材名前加入类别代码。
                           例如,经过改造后,主食材“鸡肉”升级为“103鸡肉”。其中,第一位是菜谱类
                      别,为“1”时表示“肉菜”,第二、三位“03”对应为“鸡肉”。当要求查询所有“肉

                      菜”时,则可以通过提取编码字符串中的“类别”项的信息,给出相关类别的全部菜谱。
                           方案二:直接增加“分类”数据项。
                           请根据上述的分析完成表3-2。


                                                       表3-2 系统升级优化改造方案

                              方案                       改造数据项                                增加数据项




                         菜谱数据结构



                                           1.                                  1.
                         查询功能的实现           2.                                  2.
                       过程                  3.                                  3.
                                           …                                   …
                                           优点:                                 优点:


                         数据存储空间占             广东教育出版社
                       用、操作效率评价            缺点:                                 缺点:








                        3 . 2 . 2   字符串的基本操作




                           字符串的基本操作有赋值、连接、求串长、求子串、插入子串、删除子串、查找子
                      串、判断两个串是否相等。目前,字符串在很多程序设计语言中被定义为结构数据类型,
                      有关字符串的操作也被设计成系统函数,可以直接引用。
                           以C++语言为例,通常有以下几种基本操作:

                           (1)字符串赋值:直接赋值s="20180105"。
                           (2)字符串连接s1.append(s2):把字符串s2接在s1的后面,返回连接后的新串。

                           (3)求字符串长度s.length(  ):返回字符串s中当前所含字符个数。
                           (4)求子串操作s1.substr(pos1,len1):从字符串s1中复制指定位置pos1开始、指定长度
                      len1的子串。
                           (5)插入操作s1.insert(pos,s2):将一个子串s2插入到s1的指定位置pos,返回这个新的

                      主串。
                           (6)删除操作s.erase(pos,len):删除位置pos开始的长度为len的一个子串。

              68  68







          21X2204.indd   68                                                                                        2019/9/26   13:53:16
   71   72   73   74   75   76   77   78   79   80   81