数据结构 Data Structure

Size: px
Start display at page:

Download "数据结构 Data Structure"

Transcription

1 第三章 : 线性表

2 线性表 定义 : 线性表 L 是 n 个数据元素 a 0,a, a n- 的有限序列, 记作 L=(a 0,a, a n- ) 其中元素个数 n(n 0) 定义为表 L 的长度 当 n=0 时,L 为空表, 记作 ( ) 特性 : 在表中, 除第一个元素 a 0 外, 其他每一个元素 a i 有一个且仅有 一个直接前驱 a i- 除最后一个元素 a n- 外, 其他每一个元素 a i 有一个且仅有一个直接后继 a i+ a 0 为第一个元素, 又称为表 头元素 ; a n- 为最后一个元素, 又称为表尾元素 2

3 线性表的抽象数据类型 (ADT) template <typename E> class List { public: List() {} virtual ~List() {} virtual void clear()=0; virtual void insert(const E& item)=0; virtual void append(const E& item)=0; virtual E remove()=0; virtual void movetostart()=0; virtual void movetoend()=0; virtual void prev()=0; virtual void next()=0; virtual int length() const=0; virtual int currpos() const=0; virtual void movetopos(int pos)=0; virtual bool getvalue(elem&) const=0; virtual const E& getvalue() const=0;

4 顺序表的实现 采用连续的存储单元依次存储线性表中各元素 我们称这种存储方式为顺序存储方式, 按这种存储方式所得到的线性表叫顺序表 顺序表具有这样的一个特点 : 逻辑上相邻的元素在物理上一定相邻 4

5 顺序表类的定义 template <typename E> class AList :public List<E> { private: int maxsize; int listsize; int curr; E* listarray; public: 5

6 顺序表类成员函数的实现 顺序表结点插入操作 void insert(const E& it) { Assert (listsize<maxsize, List capacity exceeded ) ;// 边界检查 for (int i=listsize;i>curr;i--) // 移位 listarray[i]=listarray[i-]; listarray[curr]=it; listsize++; } 6

7 顺序表的插入图示 k 0 k k 0 k k 0 k position k 2 k k 4 position k 2 k position k 2 x k k 5 k 6 k 4 k 5 k 4 k 5 k 6 k 6 7 7

8 顺序表结点删除操作 E remove() { Assert ((curr>=0) &&(curr<listsize), No element );// 边界检查 E it=listarray[curr]; for (int i=curr;i<listsize-;i++) // 移位 listarray[i]=listarray[i+]; listsize--; return it; } 8

9 顺序表的删除图示 k 0 k 0 k k position k 2 position k 2 k k 4 k 4 k 5 k 5 k 6 k 6 9 9

10 链表 特点 : 用一组任意的存储单元存储线性表的数据元素 利用指针实现了用不相邻的存储单元存放逻辑上相邻 的元素 每个数据元素 ai, 除存储本身信息外, 还需存储其直 接后继的信息 结点 数据域 : 元素本身信息 指针域 : 指示直接后继的存储位置 结点数据域指针域 0

11 链表 template <typename E> class Link { public: E element; // value for this node Link *next; // Pointer to next node in list Link(const E& elemval, Link* nextval=null) { element=elemval; next=nextval; } Link(link* nextval=null) { next=nextval; } }

12 单链表类 template <typename E> class LList :public List<E> { private: Link<E>* head; Link<E>* tail; Link<E>* curr; int cnt; void init(){ curr=tail=head=new Link<E>; cnt=0; } void removeall(){ while (head!=null) { curr=head; head=head->next; delete curr; } } 2

13 单链表类 public: LLlist(int size=defaultlistsize){init();} ~LList(){removeall();} void clear(){removeall();init();} bool insert(const E& it); bool append(const E& it); E remove(); void movetostart() {curr=head;} void movetoend() {curr=tail;} void prev(); void next(); int length() const {return cnt;} int currpos() const; void movetopos(int pos); const E& getvalue() const; }

14 单链表的结点插入 void insert(const E& it) { curr->next=new link<e>(it, curr->next); if (tail == curr) tail =curr->next; cnt++; } 创建新的结点并且赋给新值 new link<e>(it, curr->next); 当前结点元素的 next 域要指向新插入的结点 curr->next=new link<e>(it, curr->next); 4

15 单链表的插入 head tail 在 2 和 2 之间插入 0 head tail 创建新结点 2. 新结点指向右边的结点. 左边结点指向新结点 5 5

16 单链表结点的删除 E remove() { Assert(curr->next!=NULL, No element ); E it =curr->next->element; link<e>* ltemp =curr->next; if (tail == ltemp) tail =curr; curr->next =curr->next->next; delete ltemp; cnt--; return it; } 6

17 单链表删除示意 head p. x. 用 p 指向元素 x 的结点, 可以吗? x. p 7 7

18 删除值为 x 的结点 q p p q = p next; p next = q next; free(q); x 8 8

19 循环链表 循环链表是表中最后一个结点的指针指向头结点, 使链表构成环状 特点 : 从表中任一结点出发均可找到表中其他结点, 提高查找效率 操作与单链表基本一致, 循环条件不同 单链表 p:p->link=null 循环链表 p:p->link=h h 空表 h 9

20 双链表 双向链表是指在前驱和后继方向都能遍历的线性链 表 双向链表每个结点结构 : prev ( 左链指针 ) element ( 数据 ) nextt ( 右链指针 ) 前驱方向 后继方向 双向链表通常采用带表头结点的循环链表形式 20

21 双链表 非空表 空表 结点指针的指向 p == p llink rlink == p rlink llink 2

22 双链表结点 template <typename E> class link { private: static Link<E> *freelist; public: E element; Link* next; Link* prev; Link(const E& it, Link* prevp, Link* nextp) { element=it; prev=prevp; next=nextp; } Link(Link* prevp=null,link* nextp=null) { prev=prevp;next=nextp; } void* operator new(size_t); void operator delete(void*); } 22

23 双链表插入示意 p p next k i- k i k i+ q q prev = p; x q next = p next; p next prev = q; p next = q; 2 2

24 双链表的插入 void insert(const E& it) { curr->next=curr->next->prev =new Link<E>(it,curr,curr->next); cnt++; } 24

25 双链表删除示意 p prev p p next k i- k i k i+ prev next p prev next = p next p next prev = p prev 25 25

26 双链表的删除 E remove() { if (curr->next==tail) return NULL; E it =curr->next->element; link<e>* ltemp =curr->next; curr->next->next->prev=curr; curr->next= curr->next->next; delete ltemp; cnt--; return it; } 26

27 约瑟夫问题 : 背景 约瑟夫问题 (JosephusProblem) 据说著名犹太历史学家 Josephus 有过以下的故事 : 在罗马人占领乔塔帕特后,9 个犹太人与 Josephus 及他的朋友躲到一个洞中,9 个犹太个人开始报数, 每报数到第 人就必须自杀, 然后再由下一个重新报数, 直到所有人都自杀身亡为止 然而 Josephus 和他的朋友并不想遵从,Josephus 要他的朋友先假装遵都自杀身亡为止 然而 Josephus 和他的朋友并不想遵从,Josephus 要他的朋友先假装遵从, 他将朋友与自己安排在第 6 个与第 个位置, 于是逃过了这场死亡游戏 205 年 5 月 2 日星期四 27

28 约瑟夫问题 : 描述 问题描述设编号为 -n 的 n(n>0) 个人按顺时针方向围成一圈. 首先第 个人从 开始顺时针报数. 报 m 的人 (m 为正整数 ). 令其出列 然后再从他的下一个人开始, 重新从 顺时针报数, 报 m 的人, 再令其出列 如此下去, 直到圈中所有人出列为止 求出列编号序列 基本要求需要基于线性表的基本操作来实现约瑟夫问题需要利用链表来实现线性表 205 年 5 月 2 日星期四 28

29 解法一 :( 使用循环链表模拟整个游戏过程 ) 基本思路 由于约瑟夫环本身具有循环性质, 考虑采用循环链表, 为了统一对表中任意节点的操作, 循环链表不带头结点 每个结点的编号依次为,2,,n 初始当前位置为最后一个结点, 每次从当前位置向前移动 m- 步, 则下一个结点即为要淘汰的结点, 删掉当前要淘汰的节点, 将前一节点和后一节点连接在一起, 重复上述过程, 从而得到出列编号序列 算法的时间复杂度为 O(nm) 205 年 5 月 2 日星期四 29

30 使用循环链表 #include<iostream> using namespace std; class Link { // 建立结点类 public: int element; Link* next; Link(const int elemval,link* nextval=null) { element=elemval; next=nextval; } Link(Link* nextval=null) { next=nextval; } }; 205 年 5 月 2 日星期四 0

31 使用循环链表 class LList { // 建立循环链表类 private: void removeall() { // 删除链表中所有结点 while(cnt>0) { curr=head; head=head->next; tail->next=head; delete curr; cnt--; } } public: int cnt; // 当前链表中的结点数目 Link * curr; // 当前结点的指针 Link * head; // 第一个结点的指针 Link * tail; // 最后一个结点的指针 205 年 5 月 2 日星期四

32 使用循环链表 LList(){ // 构造函数 cnt=0; curr=tail=head=null; } ~LList() {removeall();} // 析构函数 void append(const int it) { // 在循环链表的末尾追加一个结点 if(cnt==0) curr=tail=head=new Link(it); else { tail->next=new Link(it); tail=tail->next; } tail->next=head; cnt++; } 205 年 5 月 2 日星期四 2

33 使用循环链表 bool remove(int &it){ // 删除当前指针的下一个结点 if(cnt==0) return false; it=curr->next->element; Link* Itemp=curr->next; if(tail==curr->next) tail=curr; curr->next=curr->next->next; delete Itemp; cnt--; return true; } }; 205 年 5 月 2 日星期四

34 使用循环链表 void main() { int i, m, n, it; LList L; cout<<" 请输入总共的人数和出列人数的号码 ( 从 开始 )"<<endl; cin>>n>>m; /* 读入数据 */ for(i=;i<n+;i++) L.append(i); L.curr=L.tail; // 初始当前指针指向最后一个结点 while(l.cnt>0) { for(i=;i<=m-;i++) { // 每次从当前位置向前移动 m- 步 L.curr=L.curr->next; } if(l.remove(it)) cout<<it<< ; // 删除下一个结点并返回编号 } cout<<endl; system("pause"); } 205 年 5 月 2 日星期四 4

35 解法二 :( 使用数学公式推导 ) 问题描述 :n 个人 ( 编号 0~(n-)), 从 0 开始报数, 报到 (m-) 的退出, 剩下的人继续从 0 开始报数 求胜利者的编号 第一个被淘汰的编号为 (m-)%n, 剩下的 n- 人组成了一个新的约瑟夫环 ( 以编号为 k=m%n 的人开始 ), 做一个简单的映射 : k -----> 0 k >... k > n-2 假如知道 n - 个人的最后胜利者的编号为 x, 利用映射关系逆推, 就可以得出 n 个人的胜利者的编号为 (x + k) % n 其中 k 等于 m % n 代入 (x + k) % n <=> (x + (m % n))%n <=> (x%n + (m%n)%n)%n <=> (x%n+m%n)%n <=> (x+m)%n 205 年 5 月 2 日星期四 5

36 解法二 :( 使用数学公式推导 ) 第二个被淘汰的编号为 (m-)%(n-), 同样剩下的 n-2 人组成了一个新的约瑟夫环 ( 以编号为 k=m%(n-) 的人开始 ) 要得到 n - 个人问题的解, 只需得到 n - 2 个人问题的解, 倒推下去 只有一个人时, 胜利者就是编号 0 下面给出递推式: f [] = 0; f [ i ] = ( f [i -] + m) % i; (i>) 时间复杂度为 O(n) 205 年 5 月 2 日星期四 6

37 数学公式 #include<iostream.h> void main() { int n,m,s = 0; cout<<" 请输入人数 n:"<<endl; cin>>n; cout<<" 请输入数字 m:"<<endl; cin>>m; for(int i = 2; i <= n; i++) { s = (s + m) % i; //cout<<s<<" "; } cout<<" 最后一人是 : "<<s+<<endl; } 205 年 5 月 2 日星期四 7

38 约瑟夫环 (Joseph Circle) 问题描述 : 编号为,2,...,n 的 n 个人按顺时针方向围坐一圈, 每人持有一个密码 ( 正整数 ) 现在给定一个随机数 m>0, 从编号为 的人开始, 按顺时针方向 开始顺序报数, 报到 m 时停止 报 m 的人出圈, 同时留下他的密码作为新的 m 值, 从他在顺时针方向上的下一个人开始, 重新从 开始报数, 如此下去, 直至所有的人全部出列为止 205 年 5 月 2 日星期四 8

39 约瑟夫环 (Joseph Circle) 例 : start 5 k= 2 8 k: 计数 m: 密码 出队序列 : 205 年 5 月 2 日星期四 9

40 例 : start 约瑟夫环 (Joseph Circle) 5 k=2 2 8 k: 计数 m: 密码 出队序列 : 205 年 5 月 2 日星期四 40

41 约瑟夫环 (Joseph Circle) 例 : start 2 8 k: 计数 m: 密码 7 5 k= 出队序列 : 205 年 5 月 2 日星期四 4

42 约瑟夫环 (Joseph Circle) 例 : start 2 8 k: 计数 m: 密码 k=4 5 出队序列 : 205 年 5 月 2 日星期四 42

43 约瑟夫环 (Joseph Circle) 例 : start 2 8 k: 计数 m: 密码 7 5 出队序列 : k= 存入密码 205 年 5 月 2 日星期四 4

44 约瑟夫环 (Joseph Circle) 例 : start 2 8 k: 计数 m: 密码 k= 出队序列 : 年 5 月 2 日星期四 44

45 例 : start 约瑟夫环 (Joseph Circle) 4 k=4 2 8 k: 计数 m: 密码 出队序列 : 年 5 月 2 日星期四 45

46 约瑟夫环 (Joseph Circle) 例 : start k: 计数 m: 密码 7 5 k= 出队序列 : 年 5 月 2 日星期四 46

47 例 : start 约瑟夫环 (Joseph Circle) k: 计数 m: 密码 k= 出队序列 : 年 5 月 2 日星期四 47

48 例 : start 约瑟夫环 (Joseph Circle) k: 计数 m: 密码 9 k= 出队序列 : 年 5 月 2 日星期四 48

49 例 : start 约瑟夫环 (Joseph Circle) k: 计数 m: 密码 9 k= 出队序列 : 年 5 月 2 日星期四 49

50 约瑟夫环 (Joseph Circle) 例 : start 5 k= k: 计数 m: 密码 4 22 出队序列 : 年 5 月 2 日星期四 50

51 例 : start 约瑟夫环 (Joseph Circle) k: 计数 m: 密码 4 22 k=5 5 出队序列 : 年 5 月 2 日星期四 5

52 约瑟夫环 (Joseph Circle) 例 : start 2 2 k= k: 计数 m: 密码 出队序列 : 年 5 月 2 日星期四 52

53 例 : start 约瑟夫环 (Joseph Circle) k: 计数 m: 密码 k= 出队序列 : 年 5 月 2 日星期四 5

54 约瑟夫环 (Joseph Circle) 例 : start k= k: 计数 m: 密码 出队序列 : 年 5 月 2 日星期四 54

55 约瑟夫环 (Joseph Circle) 例 : start k= k: 计数 m: 密码 出队序列 : 年 5 月 2 日星期四 55

56 数据结构 使用数组实现单向循环链表 使用整形数组 que[],que[i] 记录了第 i 个位置上人紧挨着的下一个人的位置 每次找到一个被删除的人, 取出删除位置上的密码, 且将其删除 205 年 5 月 2 日星期四 56

57 Solution #include <stdio.h> void joseph(int m,int n,int a[]) { int i,que[n+],j; for(i=;i<n;++i) que[i]=i+; que[n]=; i=n; while(que[i]!=i) { for(j=;j<m;++j) i=que[i]; printf("%d ",que[i]); m=a[que[i]]; que[i]=que[que[i]]; } printf("%d\n",i); } int main(){ int n,m,a[20],i; while(scanf("%d%d",&n,&m),n m) { for(i=;i<=n;++i) scanf("%d",a+i); joseph(m,n,a); } return 0; } 205 年 5 月 2 日星期四 57

58 线性表实现方法的比较 顺序表 插入 删除运算时间代价 O(n) 预先申请固定长度的数组 如果整个数组元素很满, 则没有结构性存储开销链表 插入 删除运算时间代价 O() 但找第 i 个元素删除运算时间 代价 O(n) 存储利用指针, 动态地按照需要为表中新的元素分配存储 空间 每个元素都有结构性存储开销 58

59 顺序表和链表存储密度的临界值 n 表示线性表中当前元素的数目, P 表示指针的存储单元大小小 ( 通常为 4 个字节 ) E 表示数据元素的存储单元大小 D 表示可以在数组中存储的线性表元素的最大数目 空间需求 顺序表的空间需求为 DE 链表的空间需求为 n(p+e) n 的临界值, 即 n>de/(p+e) n 越大, 顺序表的空间效率就更高 如果 P=E, 则临界值为 n=d/2 59

60 根据应用选择顺序表和链表 顺序表 结点总数目大概可以估计 线性表中结点比较稳定 ( 插入删除操作少 ) n>de/(p+e) 链表 结点数目无法预知 线性表中结点动态变化 ( 插入删除多 ) n<de/(p+e) 60

61 Thank you!!! 6

数据结构 Data Structure

数据结构 Data Structure 数据结构 : 线性表 Data Structure 2016 年 3 月 15 日星期二 1 线性表 栈和队列 线性表 字典 ADT 栈 队列 2016 年 3 月 15 日星期二 2 线性表 定义 : 线性表 L 是 n 个数据元素 a 0,a 1, a n-1 的有限序列, 记作 L=(a 0,a 1, a n-1 ) 其中元素个数 n(n 0) 定义为表 L 的长度 当 n=0 时,L 为空表,

More information

2.3 链表

2.3  链表 数据结构与算法 ( 二 ) 张铭主讲 采用教材 : 张铭, 王腾蛟, 赵海燕编写高等教育出版社,2008. 6 ( 十一五 国家级规划教材 ) https://pkumooc.coursera.org/bdsalgo-001/ 第二章线性表 2.1 线性表 2.2 顺序表 tail head a 0 a 1 a n-1 2.4 顺序表和链表的比较 2 链表 (linked list) 通过指针把它的一串存储结点链接成一个链

More information

Microsoft Word - 专升本练习2:线性表.doc

Microsoft Word - 专升本练习2:线性表.doc 第二章 线性表 一 选择题 1. 线性表是 ( ) A. 一个有限序列, 可以为空 B. 一个有限序列, 不能为空 C. 一个有限序列, 可以为空 D. 一个无序序列, 不能为空 2. 对顺序存储的线性表, 设其长度为 n, 在任何位置上插入或删除操作都是等概率 插入一个元素 时大约要移动表中的 ( ) 个元素, 删除一个元素时大约要移动表中的 ( ) 个元素 A. n/2 B. (n+1)/2 C.

More information

PowerPoint Presentation

PowerPoint Presentation 数据结构与算法 ( 二 ) 张铭主讲 采用教材 : 张铭, 王腾蛟, 赵海燕编写高等教育出版社,2008. 6 ( 十一五 国家级规划教材 ) https://pkumooc.coursera.org/bdsalgo-001/ 第二章 线性表 第二章线性表 2.1 线性表 2.2 顺序表 2.3 链表 {a 0, a 1,, a n 1 } a 0 a 1 a 2 a n-1 tail head a

More information

Microsoft PowerPoint - Lecture3.ppt

Microsoft PowerPoint - Lecture3.ppt Chap 4. Links, Stacks and Queue 1 Lists A list is a finite, ordered sequence of data items. Important concept: List elements have a position. Notation: What operations should we implement?

More information

C 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf ("%d", & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9

C 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf (%d, & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9 201 201 21 ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp Compilation Error long long cin scanf Time Limit Exceeded 1: A 1 B 1 C 5 D RPG 10 E 10 F 1 G II 1 1 201 201 C 1 # include 2 int main ( void

More information

PowerPoint Presentation

PowerPoint Presentation 数据结构与算法 ( 六 ) 张铭主讲 采用教材 : 张铭, 王腾蛟, 赵海燕编写高等教育出版社,2008. 6 ( 十一五 国家级规划教材 ) http://www.jpk.pku.edu.cn/pkujpk/course/sjjg 第 6 章树 C 树的定义和基本术语 树的链式存储结构 子结点表 表示方法 静态 左孩子 / 右兄弟 表示法 动态表示法 动态 左孩子 / 右兄弟 表示法 父指针表示法及其在并查集中的应用

More information

第3章.doc

第3章.doc 3 3 3 3.1 3 IT Trend C++ Java SAP Advantech ERPCRM C++ C++ Synopsys C++ NEC C C++PHP C++Java C++Java VIA C++ 3COM C++ SPSS C++ Sybase C++LinuxUNIX Motorola C++ IBM C++Java Oracle Java HP C++ C++ Yahoo

More information

Microsoft Word - 数据结构实训与习题725xdy.doc

Microsoft Word - 数据结构实训与习题725xdy.doc 第一部分学习指导与实训 3 第 2 章线性表 2.1 学习指南 (1) 理解线性表的类型定义, 掌握顺序表和链表的结构差别 (2) 熟练掌握顺序表的结构特性, 熟悉顺序表的存储结构 (3) 熟练掌握顺序表的各种运算, 并能灵活运用各种相关操作 (4) 熟练掌握链式存储结构特性, 掌握链表的各种运算 2.2 内容提要 线性表的特点 : 线性表由一组数据元素构成, 表中元素属于同一数据对象 在线性表中,

More information

Microsoft PowerPoint - Slides03_第二章 线性表.ppt [兼容模式]

Microsoft PowerPoint - Slides03_第二章 线性表.ppt [兼容模式] 第二章线性表 定义 基本操作 实现 顺序存储 链式存储 应用 多项式 线性表 (Linear List) 定义 线性表是 n ( 0) 个数据元素的有限序列, 记作 (a 1, a 2,, a n ) a i 是表中数据元素,n 是表长度 假定 : 各元素的数据类型相同 原则上 : 线性表中, 表元素的数据类型可以不相同 采用的存储表示可能会对元素的数据类型有限制 特点 除第一个元素外, 其他每一个元素有一个且仅有一个直接前驱

More information

c_cpp

c_cpp C C++ C C++ C++ (object oriented) C C++.cpp C C++ C C++ : for (int i=0;i

More information

新版 明解C++入門編

新版 明解C++入門編 511!... 43, 85!=... 42 "... 118 " "... 337 " "... 8, 290 #... 71 #... 413 #define... 128, 236, 413 #endif... 412 #ifndef... 412 #if... 412 #include... 6, 337 #undef... 413 %... 23, 27 %=... 97 &... 243,

More information

ebook39-5

ebook39-5 5 3 last-in-first-out, LIFO 3-1 L i n e a r L i s t 3-8 C h a i n 3 3. 8. 3 C + + 5.1 [ ] s t a c k t o p b o t t o m 5-1a 5-1a E D 5-1b 5-1b E E 5-1a 5-1b 5-1c E t o p D t o p D C C B B B t o p A b o

More information

Microsoft PowerPoint - string_kruse [兼容模式]

Microsoft PowerPoint - string_kruse [兼容模式] Strings Strings in C not encapsulated Every C-string has type char *. Hence, a C-string references an address in memory, the first of a contiguous set of bytes that store the characters making up the string.

More information

C++ 程序设计 OJ9 - 参考答案 MASTER 2019 年 6 月 7 日 1

C++ 程序设计 OJ9 - 参考答案 MASTER 2019 年 6 月 7 日 1 C++ 程序设计 OJ9 - 参考答案 MASTER 2019 年 6 月 7 日 1 1 CARDGAME 1 CardGame 题目描述 桌上有一叠牌, 从第一张牌 ( 即位于顶面的牌 ) 开始从上往下依次编号为 1~n 当至少还剩两张牌时进行以下操作 : 把第一张牌扔掉, 然后把新的第一张放到整叠牌的最后 请模拟这个过程, 依次输出每次扔掉的牌以及最后剩下的牌的编号 输入 输入正整数 n(n

More information

2013 C 1 # include <stdio.h> 2 int main ( void ) 3 { 4 int cases, a, b, i; 5 scanf ("%d", & cases ); 6 for (i = 0;i < cases ;i ++) 7 { 8 scanf ("%d %d

2013 C 1 # include <stdio.h> 2 int main ( void ) 3 { 4 int cases, a, b, i; 5 scanf (%d, & cases ); 6 for (i = 0;i < cases ;i ++) 7 { 8 scanf (%d %d 2013 18 ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp, Compilation Error cin scanf Time Limit Exceeded 1: A 5 B 5 C 5 D 5 E 5 F 5 1 2013 C 1 # include 2 int main ( void ) 3 { 4 int cases, a, b,

More information

Chapter12 Derived Classes

Chapter12   Derived Classes 继 承 -- 派 生 类 复 习 1. 有 下 面 类 的 说 明, 有 错 误 的 语 句 是 : class X { A) const int a; B) X(); C) X(int val) {a=2 D) ~X(); 答 案 :C 不 正 确, 应 改 成 X(int val) : a(2) { 2. 下 列 静 态 数 据 成 员 的 特 性 中, 错 误 的 是 A) 说 明 静 态 数

More information

Microsoft PowerPoint - 2线性表.ppt [兼容模式]

Microsoft PowerPoint - 2线性表.ppt [兼容模式] 2 线性表 董洪伟 http://hwdong.com 1 主要内容 线性表的类型定义 即抽象数据类型 顺序实现 即用一连续的存储空间来表示 链式实现 即用链表实现 一元稀疏多项式 链表实现 2 线性表的类型定义 线性表 n 个元素的有限序列 数据项 元素 ( 记录 ) 姓名 学号 性别 年龄 班级 健康状况 王小林 790631 男 18 计 91 健康 陈红 790632 女 20 计 91 一般

More information

Microsoft PowerPoint - DS_Ch2.ppt [兼容模式]

Microsoft PowerPoint - DS_Ch2.ppt [兼容模式] 数据结构 Ch.2 线性表 计算机学院 肖明军 Email: xiaomj@ustc.edu.cn http://staff.ustc.edu.cn/~xiaomj 2.1 线性表的逻辑结构 线性表 : 由 n(n 0) 个结点 a 1,, a n 组成的有限序列 记作 :L = (a 1, a 2,, a n ), 属性 : 长度 ---- 结点数目 n,n=0 时为空表 a i ---- 一般是同一类型

More information

FY.DOC

FY.DOC 高 职 高 专 21 世 纪 规 划 教 材 C++ 程 序 设 计 邓 振 杰 主 编 贾 振 华 孟 庆 敏 副 主 编 人 民 邮 电 出 版 社 内 容 提 要 本 书 系 统 地 介 绍 C++ 语 言 的 基 本 概 念 基 本 语 法 和 编 程 方 法, 深 入 浅 出 地 讲 述 C++ 语 言 面 向 对 象 的 重 要 特 征 : 类 和 对 象 抽 象 封 装 继 承 等 主

More information

untitled

untitled 1 Outline 數 料 數 數 列 亂數 練 數 數 數 來 數 數 來 數 料 利 料 來 數 A-Z a-z _ () 不 數 0-9 數 不 數 SCHOOL School school 數 讀 school_name schoolname 易 不 C# my name 7_eleven B&Q new C# (1) public protected private params override

More information

ebook39-6

ebook39-6 6 first-in-first-out, FIFO L i n e a r L i s t 3-1 C h a i n 3-8 5. 5. 3 F I F O L I F O 5. 5. 6 5. 5. 6.1 [ ] q u e n e ( r e a r ) ( f r o n t 6-1a A 6-1b 6-1b D C D 6-1c a) b) c) 6-1 F I F O L I F ADT

More information

Microsoft PowerPoint - ds_2.ppt

Microsoft PowerPoint - ds_2.ppt 第二章线性表 2.1 线性表的概念 2.2 顺序表示 2.3 链接表示 2.4 应用举例 -Josehus 问题另外介绍 动态顺序表 程序里常需要保存一批某种类型的元素, 这些元素的数目可能变化 ( 可以加入或删除元素 ) 有时需要把这组元素看成一个序列, 元素的顺序可能表示实际应用中的某种有意义的关系这样一组元素可以抽象为元素的一个线性表 线性表是元素的集合, 同时记录了元素的顺序关系 线性表是一种最基本的数据结构,

More information

C/C++语言 - C/C++数据

C/C++语言 - C/C++数据 C/C++ C/C++ Table of contents 1. 2. 3. 4. char 5. 1 C = 5 (F 32). 9 F C 2 1 // fal2cel. c: Convert Fah temperature to Cel temperature 2 # include < stdio.h> 3 int main ( void ) 4 { 5 float fah, cel ;

More information

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.06.doc

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.06.doc 2 5 8 11 0 13 1. 13 2. 15 3. 18 1 23 1. 23 2. 26 3. 28 2 36 1. 36 2. 39 3. 42 4. 44 5. 49 6. 51 3 57 1. 57 2. 60 3. 64 4. 66 5. 70 6. 75 7. 83 8. 85 9. 88 10. 98 11. 103 12. 108 13. 112 4 115 1. 115 2.

More information

提问袁小兵:

提问袁小兵: C++ 面 试 试 题 汇 总 柯 贤 富 管 理 软 件 需 求 分 析 篇 1. STL 类 模 板 标 准 库 中 容 器 和 算 法 这 部 分 一 般 称 为 标 准 模 板 库 2. 为 什 么 定 义 虚 的 析 构 函 数? 避 免 内 存 问 题, 当 你 可 能 通 过 基 类 指 针 删 除 派 生 类 对 象 时 必 须 保 证 基 类 析 构 函 数 为 虚 函 数 3.

More information

Microsoft Word - 01.DOC

Microsoft Word - 01.DOC 第 1 章 JavaScript 简 介 JavaScript 是 NetScape 公 司 为 Navigator 浏 览 器 开 发 的, 是 写 在 HTML 文 件 中 的 一 种 脚 本 语 言, 能 实 现 网 页 内 容 的 交 互 显 示 当 用 户 在 客 户 端 显 示 该 网 页 时, 浏 览 器 就 会 执 行 JavaScript 程 序, 用 户 通 过 交 互 式 的

More information

(Microsoft Word - 11\244T\246\342\277\337\260l\302\334.doc)

(Microsoft Word - 11\244T\246\342\277\337\260l\302\334.doc) 赤 川 次 郎 作 品 集 11 三 色 貓 追 蹤 序 曲 那 是 一 隻 凶 猛 的 野 狗 加 上 饑 餓, 正 在 虎 視 眈 眈 地 注 視 孩 子 嘴 裏 啃 著 的 香 腸, 準 備 突 然 猛 撲 上 去 孩 子 還 不 滿 三 歲, 不 曉 得 若 想 躲 開 那 隻 身 體 比 自 己 大 的 惡 犬 一 擊, 最 好 是 把 香 腸 扔 掉, 但 他 反 而 緊 握 在 手 開

More information

Microsoft Word - 970617cppFinalSolution.doc

Microsoft Word - 970617cppFinalSolution.doc 國 立 台 灣 海 洋 大 學 資 訊 工 程 系 C++ 程 式 設 計 期 末 考 參 考 答 案 姓 名 : 系 級 : 學 號 : 97/06/17 考 試 時 間 :10:00 12:10 試 題 敘 述 蠻 多 的, 看 清 楚 題 目 問 什 麼, 針 對 重 點 回 答 是 很 重 要 的 ; 不 確 定 的 請 一 定 要 當 場 提 出 來, 不 要 白 花 力 氣 在 誤 會

More information

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074> 程 序 设 计 实 习 INFO130048 3-2.C++ 面 向 对 象 程 序 设 计 重 载 继 承 多 态 和 聚 合 复 旦 大 学 计 算 机 科 学 与 工 程 系 彭 鑫 pengxin@fudan.edu.cn 内 容 摘 要 方 法 重 载 类 的 继 承 对 象 引 用 和 拷 贝 构 造 函 数 虚 函 数 和 多 态 性 类 的 聚 集 复 旦 大 学 计 算 机 科 学

More information

untitled

untitled 1 7 7.1 7.2 7.3 7.4 7.5 2 7.1 VFT virtual 7.1 3 1 1. 2. public protected public 3. VFT 4. this const volatile 4 2 5. ( ) ( ) 7.1 6. no-static virtual 7.2 7. inline 7.3 5 3 8. this this 9. ( ) ( ) delete

More information

Strings

Strings Polymorphism and Virtual Functions Cheng-Chin Chiang Virtual Function Basics 多 型 (Polymorphism) 賦 予 一 個 函 數 多 種 意 涵, 存 在 於 同 一 類 別 之 內 祖 先 類 別 與 後 代 類 別 間 物 件 導 向 程 式 設 計 基 本 原 理 虛 擬 函 數 (Virtual Function)

More information

NOWOER.OM m/n m/=n m/n m%=n m%n m%=n m%n m/=n 4. enum string x1, x2, x3=10, x4, x5, x; 函数外部问 x 等于什么? 随机值 5. unsigned char *p1; unsigned long *p

NOWOER.OM m/n m/=n m/n m%=n m%n m%=n m%n m/=n 4. enum string x1, x2, x3=10, x4, x5, x; 函数外部问 x 等于什么? 随机值 5. unsigned char *p1; unsigned long *p NOWOER.OM /++ 程师能 评估. 单项选择题 1. 下 描述正确的是 int *p1 = new int[10]; int *p2 = new int[10](); p1 和 p2 申请的空间 的值都是随机值 p1 和 p2 申请的空间 的值都已经初始化 p1 申请的空间 的值是随机值,p2 申请的空间 的值已经初始化 p1 申请的空间 的值已经初始化,p2 申请的空间 的值是随机值 2.

More information

untitled

untitled 1 行 行 行 行.NET 行 行 類 來 行 行 Thread 類 行 System.Threading 來 類 Thread 類 (1) public Thread(ThreadStart start ); Name 行 IsAlive 行 行狀 Start 行 行 Suspend 行 Resume 行 行 Thread 類 (2) Sleep 行 CurrentThread 行 ThreadStart

More information

untitled

untitled (encapsulation) 例 類 說 類 料 來 料 information hiding 念 (inheritance) 來說 類 類 類 類 類 類 行 利 來 (polymorphism) 不 類 數 不 1 2 3 4 類 類 不 類 不 類 5 6 7 // virtual 不見了 #include #include using namespace

More information

untitled

untitled 1 Outline 料 類 說 Tang, Shih-Hsuan 2006/07/26 ~ 2006/09/02 六 PM 7:00 ~ 9:30 聯 ives.net@gmail.com www.csie.ntu.edu.tw/~r93057/aspnet134 度 C# 力 度 C# Web SQL 料 DataGrid DataList 參 ASP.NET 1.0 C# 例 ASP.NET 立

More information

chap07.key

chap07.key #include void two(); void three(); int main() printf("i'm in main.\n"); two(); return 0; void two() printf("i'm in two.\n"); three(); void three() printf("i'm in three.\n"); void, int 标识符逗号分隔,

More information

Microsoft PowerPoint - 第+2+章+线性表[check].ppt [兼容模式]

Microsoft PowerPoint - 第+2+章+线性表[check].ppt [兼容模式] 教学内容 1 线性表的定义和性质及基本运算 2 线性表的顺序存储结构 3 线性表的链式存储结构 4 多项式的代数运算 线性结构的特点 : 数据元素的非空有限集 存在唯一的一个被称作 第一个 的数据元素 ; 存在唯一的一个被称作 最后一个 的数据元素 ; 除第一个之外的数据元素均只有一个前驱 ; 除最后一个之外的数据元素均只有一个后继 例 : 法学系 8523101 第一个 数据元素 国贸系 8522105

More information

Microsoft Word - ch04三校.doc

Microsoft Word - ch04三校.doc 4-1 4-1-1 (Object) (State) (Behavior) ( ) ( ) ( method) ( properties) ( functions) 4-2 4-1-2 (Message) ( ) ( ) ( ) A B A ( ) ( ) ( YourCar) ( changegear) ( lowergear) 4-1-3 (Class) (Blueprint) 4-3 changegear

More information

Microsoft PowerPoint - DS_Ch2_EN [兼容模式]

Microsoft PowerPoint - DS_Ch2_EN [兼容模式] Data Structure Ch.2 Linear List Dr. He Emil Huang School of Computer Science and Technology Soochow University 苏州大学计算机科学与技术学院网络工程系 本章 ppt 与教材对应情况 本章涉及所有内容涵盖了教材以下章节 P212~P233 6.1 (List definition 表的定义 )

More information

2013 C 1 #include <stdio.h> 2 int main(void) 3 { 4 int cases, i; 5 long long a, b; 6 scanf("%d", &cases); 7 for (i = 0; i < cases; i++) 8 { 9 scanf("%

2013 C 1 #include <stdio.h> 2 int main(void) 3 { 4 int cases, i; 5 long long a, b; 6 scanf(%d, &cases); 7 for (i = 0; i < cases; i++) 8 { 9 scanf(% 2013 ( 28 ) ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp Compilation Error long long cin scanf Time Limit Exceeded 1: A 10 B 1 C 1 D 5 E 5 F 1 G II 5 H 30 1 2013 C 1 #include 2 int main(void) 3

More information

download.kaoyan.com_2006ÄêÌì½ò¹¤Òµ´óѧ¸ß¼¶ÓïÑÔ³ÌÐòÉè¼Æ£¨409£©¿¼ÑÐÊÔÌâ

download.kaoyan.com_2006ÄêÌì½ò¹¤Òµ´óѧ¸ß¼¶ÓïÑÔ³ÌÐòÉè¼Æ£¨409£©¿¼ÑÐÊÔÌâ 考生注意 : 本试卷共七大题, 满分 150 分 考试时间为 3 小时 ; 所有答案均写在答题纸上 ( 注明题号 ), 在此答题一律无效无效 一 选择题 ( 本题共 20 小题, 每小题 2 分, 满分 40 分 ) 1 char ch 1 2 A 0

More information

untitled

untitled 3 C++ 3.1 3.2 3.3 3.4 new delete 3.5 this 3.6 3.7 3.1 3.1 class struct union struct union C class C++ C++ 3.1 3.1 #include struct STRING { typedef char *CHARPTR; // CHARPTR s; // int strlen(

More information

PowerPoint Presentation

PowerPoint Presentation 数据结构与算法 ( 六 ) 张铭主讲 采用教材 : 张铭, 王腾蛟, 赵海燕编写高等教育出版社,2008. 6 ( 十一五 国家级规划教材 ) http://www.jpk.pku.edu.cn/pkujpk/course/sjjg A 第 6 章树 B C 树的定义和基本术语 树的链式存储结构 子结点表 表示方法 静态 左孩子 / 右兄弟 表示法 动态表示法 动态 左孩子 / 右兄弟 表示法 父指针表示法及其在并查集中的应用

More information

OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料

OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢   学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 Email: 51141201063@ecnu.cn 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料 OOP with Java Java 类型 引用 不可变类型 对象存储位置 作用域 OOP

More information

(6) 要 求 付 款 管 理 员 从 预 订 表 中 查 询 距 预 订 的 会 议 时 间 两 周 内 的 预 定, 根 据 客 户 记 录 给 满 足 条 件 的 客 户 发 送 支 付 余 款 要 求 (7) 支 付 余 款 管 理 员 收 到 客 户 余 款 支 付 的 通 知 后, 检

(6) 要 求 付 款 管 理 员 从 预 订 表 中 查 询 距 预 订 的 会 议 时 间 两 周 内 的 预 定, 根 据 客 户 记 录 给 满 足 条 件 的 客 户 发 送 支 付 余 款 要 求 (7) 支 付 余 款 管 理 员 收 到 客 户 余 款 支 付 的 通 知 后, 检 2016 年 上 半 年 软 件 设 计 师 考 试 真 题 ( 下 午 题 ) 下 午 试 题 试 题 一 ( 共 15 分 ) 阅 读 下 列 说 明 和 图, 回 答 问 题 1 至 问 题 4, 将 解 答 填 入 答 题 纸 的 对 应 栏 内 说 明 某 会 议 中 心 提 供 举 办 会 议 的 场 地 设 施 和 各 种 设 备, 供 公 司 与 各 类 组 织 机 构 租 用 场

More information

<4D6963726F736F667420576F7264202D20C8EDC9E82DCFC2CEE7CCE22D3039C9CF>

<4D6963726F736F667420576F7264202D20C8EDC9E82DCFC2CEE7CCE22D3039C9CF> 全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 考 试 2009 年 上 半 年 软 件 设 计 师 下 午 试 卷 ( 考 试 时 间 14:00~16:30 共 150 分 钟 请 按 下 述 要 求 正 确 填 写 答 题 纸 1. 在 答 题 纸 的 指 定 位 置 填 写 你 所 在 的 省 自 治 区 直 辖 市 计 划 单 列 市 的 名 称 2. 在 答

More information

华侨大学2011年硕士研究生入学考试专业课试卷

华侨大学2011年硕士研究生入学考试专业课试卷 华侨大学 2016 年硕士研究生入学考试专业课试卷 ( 答案必须写在答题纸上 ) 招生专业计算机技术 ( 专业学位 ) 科目名称数据结构与 C++ 科目代码 850 第一部分数据结构 ( 总分 75 分 ) 一. 单项选择题 ( 每题 1.5 分, 共 12 分 ) 1. 下列关于顺序存储结构的叙述哪一个是错误的?( ) A. 存储密度大 B. 插入操作不方便 C. 不可随机访问任意结点 D. 存储单元的地址是连续的

More information

全国计算机技术与软件专业技术资格(水平)考试

全国计算机技术与软件专业技术资格(水平)考试 全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 ) 考 试 2008 年 上 半 年 程 序 员 下 午 试 卷 ( 考 试 时 间 14:00~16:30 共 150 分 钟 ) 试 题 一 ( 共 15 分 ) 阅 读 以 下 说 明 和 流 程 图, 填 补 流 程 图 中 的 空 缺 (1)~(9), 将 解 答 填 入 答 题 纸 的 对 应 栏 内 [ 说 明

More information

Microsoft PowerPoint - 10 模板 Template.pptx

Microsoft PowerPoint - 10 模板 Template.pptx 模板 Tempalte 泛型编程的需要 Why Templates? 设想你对整数类型实现了一个排序算法 : void sort(int *is,int n); 用该函数可以对实 复数或工资单排序吗? 模板可以复用源代码 - 泛型编程. inline void Swap( int &x, int &y){ int t = x; x = y; y =t; inline void Swap(double

More information

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式]

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式] Arrays and Strings 存储同类型的多个元素 Store multi elements of the same type 数组 (array) 存储固定数目的同类型元素 如整型数组存储的是一组整数, 字符数组存储的是一组字符 数组的大小称为数组的尺度 (dimension). 定义格式 : type arrayname[dimension]; 如声明 4 个元素的整型数组 :intarr[4];

More information

Microsoft Word - 第2章 线性表.docx

Microsoft Word - 第2章 线性表.docx 第 2 章线性表 学习目标 u 理解顺序表的逻辑与存储原理, 并能实现简单顺序表 u 掌握单链表的逻辑与存储原理, 并能实现单链表 u 掌握双向链表的逻辑与存储原理 u 掌握循环链表的逻辑与存储原理线性表, 顾名思义是像线一样性质的表, 它的用处多不胜数, 是最常用且最简单的一种数据结构, 例如, 一串英文字母 一队手拉手的小朋友 一份学生成绩单等等都可以用线性表表示 线性表的存储结构有顺序存储结构和链式存储结构两种,

More information

Strings

Strings Inheritance Cheng-Chin Chiang Relationships among Classes A 類 別 使 用 B 類 別 學 生 使 用 手 機 傳 遞 訊 息 公 司 使 用 金 庫 儲 存 重 要 文 件 人 類 使 用 交 通 工 具 旅 行 A 類 別 中 有 B 類 別 汽 車 有 輪 子 三 角 形 有 三 個 頂 點 電 腦 內 有 中 央 處 理 單 元 A

More information

C 1

C 1 C homepage: xpzhangme 2018 5 30 C 1 C min(x, y) double C // min c # include # include double min ( double x, double y); int main ( int argc, char * argv []) { double x, y; if( argc!=

More information

目 录 目 录 前言 第 章 绪论 知识点串讲 典型例题详解 课后习题与解答 第 章 线性表 知识点串讲 典型例题详解 课后习题与解答 第 章 栈和队列 知识点串讲 典型例题详解 课后习题与解答 第 章 串 知识点串讲 典型例题详解 课后习题与解答 第 章 数组和广义表 知识点串讲 典型例题详解 课

目 录 目 录 前言 第 章 绪论 知识点串讲 典型例题详解 课后习题与解答 第 章 线性表 知识点串讲 典型例题详解 课后习题与解答 第 章 栈和队列 知识点串讲 典型例题详解 课后习题与解答 第 章 串 知识点串讲 典型例题详解 课后习题与解答 第 章 数组和广义表 知识点串讲 典型例题详解 课 数据结构 语言版 例题详解与课程设计指导 主 编 秦 锋 袁志祥副主编 陈学进 王森玉郑 啸 程泽凯 合肥 目 录 目 录 前言 第 章 绪论 知识点串讲 典型例题详解 课后习题与解答 第 章 线性表 知识点串讲 典型例题详解 课后习题与解答 第 章 栈和队列 知识点串讲 典型例题详解 课后习题与解答 第 章 串 知识点串讲 典型例题详解 课后习题与解答 第 章 数组和广义表 知识点串讲 典型例题详解

More information

NethersoleJO89(8).indd

NethersoleJO89(8).indd 2 3 4 5 6 7 8 9 10 雅風四十六期 二零零八年九月 婆婆的愛心感動了我 陳姑娘在災區認識了白婆婆 她的家人全都在外地工 作 婆婆表示地震當日 她急忙地救了兩戶鄰舍的兩名小 孩 拖著六歲的男孩和揹著四個月大的嬰孩從災區步行兩 日後到達救援區 獲救的男孩每天都前往帳篷探望婆婆 因此她面上常帶笑容 每當白婆婆看見義工隊到災區時 都會送上暖暖的問候 更將獲配給的涼水贈予義工們 她 那真誠和熱切的關懷深深感動了義工隊

More information

untitled

untitled 1 DBF (READDBF.C)... 1 2 (filetest.c)...2 3 (mousetes.c)...3 4 (painttes.c)...5 5 (dirtest.c)...9 6 (list.c)...9 1 dbf (readdbf.c) /* dbf */ #include int rf,k,reclen,addr,*p1; long brec,erec,i,j,recnum,*p2;

More information

立 志 于 打 造 最 贴 近 考 生 实 际 的 辅 导 书 计 算 机 考 研 之 数 据 结 构 高 分 笔 记 率 辉 编 著 周 伟 张 浩 审 核 讨 论 群 :15945769

立 志 于 打 造 最 贴 近 考 生 实 际 的 辅 导 书 计 算 机 考 研 之 数 据 结 构 高 分 笔 记 率 辉 编 著 周 伟 张 浩 审 核 讨 论 群 :15945769 立 志 于 打 造 最 贴 近 考 生 实 际 的 辅 导 书 计 算 机 考 研 之 数 据 结 构 高 分 笔 记 率 辉 编 著 周 伟 张 浩 审 核 讨 论 群 :15945769 前 言 在 计 算 机 统 考 的 四 门 专 业 课 中, 最 难 拿 高 分 的 就 是 数 据 结 构 但 是 这 门 课 本 身 的 难 度 并 不 是 考 生 最 大 的 障 碍, 真 正 的 障 碍

More information

第七讲 继承与多态

第七讲  继承与多态 第 七 章 继 承 与 派 生 1 本 章 主 要 内 容 的 继 承 成 员 的 访 问 控 制 单 继 承 与 多 继 承 派 生 的 构 造 析 构 函 数 成 员 的 标 识 与 访 问 深 度 探 索 2 的 继 承 与 派 生 的 继 承 与 派 生 保 持 已 有 的 特 性 而 构 造 新 的 过 程 称 为 继 承 在 已 有 的 基 础 上 新 增 自 己 的 特 性 而 产 生

More information

华侨大学 2014 年硕士研究生入学考试专业课试卷 B ( 答案必须写在答题纸上 ) 招生专业 计算机技术 科目名称 数据结构与 C++ 科目代码 850 第一部分 C++ ( 总分 75 分 ) 一 单项选择题 (18 分, 每小题 2 分 ) 1. 若有定义 :int a[3][4];, 则表达

华侨大学 2014 年硕士研究生入学考试专业课试卷 B ( 答案必须写在答题纸上 ) 招生专业 计算机技术 科目名称 数据结构与 C++ 科目代码 850 第一部分 C++ ( 总分 75 分 ) 一 单项选择题 (18 分, 每小题 2 分 ) 1. 若有定义 :int a[3][4];, 则表达 华侨大学 2014 年硕士研究生入学考试专业课试卷 B ( 答案必须写在答题纸上 ) 招生专业 计算机技术 科目名称 数据结构与 C++ 科目代码 850 第一部分 C++ ( 总分 75 分 ) 一 单项选择题 (18 分, 每小题 2 分 ) 1. 若有定义 :int a[3][4];, 则表达式 sizeof(a)/sizeof(int[4]) 的值为 ( ) A) 3 B) 4 C) 5 D)

More information

第2章 递归与分治策略

第2章  递归与分治策略 : 1. 2. 3. Strassen 4. 5. 6. 7. 8. 9... 2 T(n) = n T(n/2) T(n/2) T(n/2) T(n/2) 3 T(n) = n n/2 n/2 n/2 n/2 T(n/4)T(n/4)T(n/4)T(n/4) T(n/4)T(n/4)T(n/4)T(n/4) T(n/4)T(n/4)T(n/4)T(n/4) T(n/4)T(n/4)T(n/4)T(n/4

More information

untitled

untitled 1 1.1 1.2 1.3 1.4 1.5 ++ 1.6 ++ 2 BNF 3 4 5 6 7 8 1.2 9 1.2 IF ELSE 10 1.2 11 1.2 12 1.3 Ada, Modula-2 Simula Smalltalk-80 C++, Objected Pascal(Delphi), Java, C#, VB.NET C++: C OOPL Java: C++ OOPL C# C++

More information

Microsoft PowerPoint - DS_Ch5.ppt [兼容模式]

Microsoft PowerPoint - DS_Ch5.ppt [兼容模式] 数据结构 Ch.5 数组和广义表 计算机学院 肖明军 Email: xiaomj@ustc.edu.cn http://staff.ustc.edu.cn/~xiaomj 多维数组 是最易处理的非线性结构 因为各元素类型一致, 各维上下界固定, 所以它最容易线性化, 故可看做是线性表的拓广 例如 : 二维数组可以看做是由列向量组成的线性表 1. 结构特性 例 : 二维数组, 它属于两个向量 ;i th

More information

untitled

untitled 1 Outline ArrayList 類 列類 串類 類 類 例 理 MSDN Library MSDN Library 量 例 參 列 [ 說 ] [] [ 索 ] [] 來 MSDN Library 了 類 類 利 F1 http://msdn.microsoft.com/library/ http://msdn.microsoft.com/library/cht/ Object object

More information

中北大学常规事项财务报销操作指南

中北大学常规事项财务报销操作指南 中 北 大 学 常 规 事 项 财 务 报 销 操 作 指 南 一 办 公 费 报 销 指 南 定 义 : 办 公 费 是 单 位 购 买 按 财 务 会 计 制 度 规 定 不 符 合 固 定 资 产 标 准 的 日 常 办 公 用 品 书 报 杂 志 等 支 出 通 俗 讲 是 指 办 公 场 所 使 用 的 低 值 易 耗 品 办 公 用 品 的 类 别 : 纸 薄 类 笔 尺 类 装 订 类

More information

untitled

untitled A, 3+A printf( ABCDEF ) 3+ printf( ABCDEF ) 2.1 C++ main main main) * ( ) ( ) [ ].* ->* ()[] [][] ** *& char (f)(int); ( ) (f) (f) f (int) f int char f char f(int) (f) char (*f)(int); (*f) (int) (

More information

Microsoft PowerPoint - 5. 指针Pointers.ppt [兼容模式]

Microsoft PowerPoint - 5. 指针Pointers.ppt [兼容模式] 指针 Pointers 变量指针与指针变量 Pointer of a variable 变量与内存 (Variables and Memory) 当你声明一个变量时, 计算机将给该变量一个内存, 可以存储变量的值 当你使用变量时, 计算机将做两步操作 : - 根据变量名查找其对应的地址 ; - 通过地址对该地址的变量内容进行读 (retrieve) 或写 (set) 变量的地址称为变量的指针! C++

More information

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 -> 目录 1 大概思路... 1 2 创建 WebAPI... 1 3 创建 CrossMainController 并编写... 1 4 Nuget 安装 microsoft.aspnet.webapi.cors... 4 5 跨域设置路由... 4 6 编写 Jquery EasyUI 界面... 5 7 运行效果... 7 8 总结... 7 1 1 大概思路 创建 WebAPI 创建 CrossMainController

More information

内 容 提 要 指 针 持 久 动 态 内 存 分 配 字 符 串 ( 字 符 数 组 ) 2

内 容 提 要 指 针 持 久 动 态 内 存 分 配 字 符 串 ( 字 符 数 组 ) 2 第 六 讲 指 针 与 字 符 串 1 内 容 提 要 指 针 持 久 动 态 内 存 分 配 字 符 串 ( 字 符 数 组 ) 2 指 针 什 么 是 指 针 指 针 的 定 义 与 运 算 指 针 与 一 维 数 组 指 针 数 组 行 指 针 与 二 维 数 组 指 针 与 引 用 指 针 与 函 数 3 指 针 定 义 什 么 是 指 针 指 针 变 量, 简 称 指 针, 用 来 存 放

More information

概述

概述 OPC Version 1.6 build 0910 KOSRDK Knight OPC Server Rapid Development Toolkits Knight Workgroup, eehoo Technology 2002-9 OPC 1...4 2 API...5 2.1...5 2.2...5 2.2.1 KOS_Init...5 2.2.2 KOS_InitB...5 2.2.3

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Java application Java main applet Web applet Runnable Thread CPU Thread 1 Thread 2 Thread 3 CUP Thread 1 Thread 2 Thread 3 ,,. (new) Thread (runnable) start( ) CPU (running) run ( ) blocked CPU sleep(

More information

Microsoft Word - 物件導向編程精要.doc

Microsoft Word - 物件導向編程精要.doc Essential Object-Oriented Programming Josh Ko 2007.03.11 object-oriented programming C++ Java OO class object OOP Ruby duck typing complexity abstraction paradigm objects objects model object-oriented

More information

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F 1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET 2.0 2.0.NET Framework.NET Framework 2.0 ( 3).NET Framework 2.0.NET Framework ( System ) o o o o o o Boxing UnBoxing() o

More information

( 总 第 1073 期 ) 浙 江 省 人 民 政 府 主 办 2015 年 3 月 17 日 出 版 省 政 府 令 省 政 府 文 件 目 录 浙 江 省 大 型 群 众 性 活 动 安 全 管 理 办 法 ( 浙 江 省 人 民 政 府 令 第 333 号 ) (3) 浙 江 省 人 民 政

( 总 第 1073 期 ) 浙 江 省 人 民 政 府 主 办 2015 年 3 月 17 日 出 版 省 政 府 令 省 政 府 文 件 目 录 浙 江 省 大 型 群 众 性 活 动 安 全 管 理 办 法 ( 浙 江 省 人 民 政 府 令 第 333 号 ) (3) 浙 江 省 人 民 政 ( 总 第 1073 期 ) 浙 江 省 人 民 政 府 主 办 2015 年 3 月 17 日 出 版 省 政 府 令 省 政 府 文 件 目 录 浙 江 省 大 型 群 众 性 活 动 安 全 管 理 办 法 ( 浙 江 省 人 民 政 府 令 第 333 号 ) (3) 浙 江 省 人 民 政 府 关 于 命 名 第 一 批 省 级 生 态 市 第 七 批 省 级 生 态 县 ( 市 区 )

More information

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.07.doc

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.07.doc 2 5 8 11 0 1. 13 2. 15 3. 18 1 1. 22 2. 25 3. 27 2 1. 35 2. 38 3. 41 4. 43 5. 48 6. 50 3 1. 56 2. 59 3. 63 4. 65 5. 69 13 22 35 56 6. 74 7. 82 8. 84 9. 87 10. 97 11. 102 12. 107 13. 111 4 114 1. 114 2.

More information

《计算概论》课程 第十九讲 C 程序设计语言应用

《计算概论》课程 第十九讲  C 程序设计语言应用 计算概论 A 程序设计部分 字符数组与字符串 李戈 北京大学信息科学技术学院软件研究所 lige@sei.pku.edu.cn 字符数组的定义 #include int main() char a[10] = 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j' ; for (int i = 0; i < 10; i++) cout

More information

1.5招募说明书(草案)

1.5招募说明书(草案) PUBLIC 2014 1 PUBLIC - 1 2014 1 PUBLIC - 2 2014 1 PUBLIC - 3 2014 1 PUBLIC - 4 2014 1 PUBLIC - 5 2014 1 PUBLIC - 6 2014 1 PUBLIC - 7 2014 1 PUBLIC - 8 2014 1 PUBLIC - 9 2014 1 PUBLIC - 10 2014 1 PUBLIC

More information

38 47995529 威 福 髮 藝 店 桃 園 市 蘆 竹 區 中 山 里 福 祿 一 街 48 號 地 下 一 樓 50,000 獨 資 李 依 純 105/04/06 府 經 登 字 第 1059003070 號 39 47995534 宏 品 餐 飲 桃 園 市 桃 園 區 信 光 里 民

38 47995529 威 福 髮 藝 店 桃 園 市 蘆 竹 區 中 山 里 福 祿 一 街 48 號 地 下 一 樓 50,000 獨 資 李 依 純 105/04/06 府 經 登 字 第 1059003070 號 39 47995534 宏 品 餐 飲 桃 園 市 桃 園 區 信 光 里 民 1 08414159 惠 鴻 眼 鏡 行 桃 園 市 中 壢 區 福 德 里 中 華 路 一 段 186 號 1 樓 30,000 獨 資 宋 耀 鴻 105/04/27 府 經 登 字 第 1059003866 號 2 17891110 承 元 冷 氣 空 調 工 程 行 桃 園 市 桃 園 區 中 德 里 國 際 路 1 段 98 巷 50 號 2 樓 之 4 200,000 獨 資 詹 安 平

More information

C/C++语言 - 分支结构

C/C++语言 - 分支结构 C/C++ Table of contents 1. if 2. if else 3. 4. 5. 6. continue break 7. switch 1 if if i // colddays.c: # include int main ( void ) { const int FREEZING = 0; float temperature ; int cold_ days

More information

C++ 程序设计 实验 2 - 参考答案 MASTER 2017 年 5 月 21 日 1

C++ 程序设计 实验 2 - 参考答案 MASTER 2017 年 5 月 21 日 1 C++ 程序设计 实验 2 - 参考答案 MASTER 2017 年 5 月 21 日 1 1 CRECT 类 1 CRect 类 设计矩形类, 包含 长度和宽度信息 基本构造函数 基础属性的访问接口 ( 读 / 写, Read/Write, Get/Set) 计算周长和面积 ( 注 : 基本构造函数, 一个无参数的默认构造函数, 以及一个初始化数据成员的构造函数如果数据成员的初始化有多种形式, 就提供多个构造函数

More information

试卷代号 : 座位号 CD 中央广播电视大学 学年度第二学期 " 开放本科 " 期末考试 数据结构 ( 本 ) 试题 I 题号 - - I 二 l 三 l 四 l 总 分 分数 I I I I I I 2009 年 7 月 得分 评卷人 I I I 一

试卷代号 : 座位号 CD 中央广播电视大学 学年度第二学期  开放本科  期末考试 数据结构 ( 本 ) 试题 I 题号 - - I 二 l 三 l 四 l 总 分 分数 I I I I I I 2009 年 7 月 得分 评卷人 I I I 一 试卷代号 : 1 2 5 2 座位号 CD 中央广播电视大学 2 0 0 8-2 0 0 9 学年度第二学期 " 开放本科 " 期末考试 数据结构 ( 本 ) 试题 I 题号 - - I 二 l 三 l 四 l 总 分 分数 I I I I I I 2009 年 7 月 得分 评卷人 I I I 一 单项选择题 ( 每小题 2 分如 崎盯扫, 共 3t 3ω O 1. 针对线性表, 在存储后如果最常用的操作是取第

More information

概述

概述 OPC Version 1.8 build 0925 KOCRDK Knight OPC Client Rapid Development Toolkits Knight Workgroup, eehoo Technology 2002-9 OPC 1...4 2 API...5 2.1...5 2.2...5 2.2.1 KOC_Init...5 2.2.2 KOC_Uninit...5 2.3...5

More information

C/C++ 语言 - 循环

C/C++ 语言 - 循环 C/C++ Table of contents 7. 1. 2. while 3. 4. 5. for 6. 8. (do while) 9. 10. (nested loop) 11. 12. 13. 1 // summing.c: # include int main ( void ) { long num ; long sum = 0L; int status ; printf

More information

Microsoft Word - 第7章 类与对象.docx

Microsoft Word - 第7章 类与对象.docx 第 7 章类与对象 案例 1 地址类 #include class Address char Name[21]; char Street[51]; char City[51]; char Postcode[10]; SetAddress(char *name,char *street,char *city,char *postcode); void ChangeName(char

More information

PowerPoint Presentation

PowerPoint Presentation 数 据 结 构 与 算 法 ( 六 ) 张 铭 主 讲 采 用 教 材 : 张 铭, 王 腾 蛟, 赵 海 燕 编 写 高 等 教 育 出 版 社,2008. 6 ( 十 一 五 国 家 级 规 划 教 材 ) http://www.jpk.pku.edu.cn/pkujpk/course/sjjg A 第 6 章 树 B 树 的 定 义 和 基 本 术 语 树 的 链 式 存 储 结 构 J H

More information

Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx

Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx 运算符重载 Operator Overloading class Point { public: ; double x_, y_; Why Operator Overloading? Point (double x =0, double y = 0):x_(x),y_(y) { int main(){ Point a(1., 2), b(3,4); Point c = a + b; return 0;

More information

无类继承.key

无类继承.key 无类继承 JavaScript 面向对象的根基 周爱 民 / aimingoo aiming@gmail.com https://aimingoo.github.io https://github.com/aimingoo rand = new Person("Rand McKinnon",... https://docs.oracle.com/cd/e19957-01/816-6408-10/object.htm#1193255

More information

運算子多載 Operator Overloading

運算子多載 Operator Overloading 多型 Polymorphism 講師 : 洪安 1 多型 編譯時期多型 ( 靜態多型 ) function overloading 如何正確呼叫同名的函數? 利用參數個數與型態 operator overloading 其實同 function overloading 執行時期多型 ( 或動態多型 ) 如何正確呼叫不同物件的相同名稱的成員函數 利用繼承與多型 2 子類別與父類別物件間的指定 (assignment)

More information

運算子多載 Operator Overloading

運算子多載 Operator Overloading 函數樣板 (Function Template) 與 類別樣板 (Class Template) 講師 : 洪安 1 資料結構與 C++ 程式設計進階班 為何需要通用函數? (1/2) int abs(int x) { return (x>0)?x:-x; 取名困難不好記 float fabs(float x) { return (x>0)?x:-x; complex cabs(complex x)

More information

javaexample-02.pdf

javaexample-02.pdf n e w. s t a t i c s t a t i c 3 1 3 2 p u b l i c p r i v a t e p r o t e c t e d j a v a. l a n g. O b j e c t O b j e c t Rect R e c t x 1 y 1 x 2 y 2 R e c t t o S t r i n g ( ) j a v a. l a n g. O

More information

untitled

untitled 1 MSDN Library MSDN Library 量 例 參 列 [ 說 ] [] [ 索 ] [] 來 MSDN Library 了 類 類 利 F1 http://msdn.microsoft.com/library/ http://msdn.microsoft.com/library/cht/ Object object 參 類 都 object 參 object Boxing 參 boxing

More information

新・明解C言語入門編『索引』

新・明解C言語入門編『索引』 !... 75!=... 48 "... 234 " "... 9, 84, 240 #define... 118, 213 #include... 148 %... 23 %... 23, 24 %%... 23 %d... 4 %f... 29 %ld... 177 %lf... 31 %lu... 177 %o... 196 %p... 262 %s... 242, 244 %u... 177

More information

ebook39-13

ebook39-13 1 3 13 ~ 17 13.1 optimizatio problem c o s t r a i t optimizatio fuctio feasible solutio optimal solutio 13-1 [ ] 1 i s i i a i i t i i= 1 x i x 1 i i s i x i x i =t 0 x i a i i=1 a i < t i= 1 406 / t

More information

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例 帝国 CMS 下在 PHP 文件中调用数据库类执行 SQL 语句实例 这篇文章主要介绍了帝国 CMS 下在 PHP 文件中调用数据库类执行 SQL 语句实例, 本文还详细介绍了帝国 CMS 数据库类中的一些常用方法, 需要的朋友可以参考下 例 1: 连接 MYSQL 数据库例子 (a.php)

More information

<4D6963726F736F667420576F7264202D20B6C0AE78B0EDAABAC0B8A740B8D65FA7EBA7BAA54EA4E5BEC7ACE3A873C24FA55AA15E2E646F63>

<4D6963726F736F667420576F7264202D20B6C0AE78B0EDAABAC0B8A740B8D65FA7EBA7BAA54EA4E5BEC7ACE3A873C24FA55AA15E2E646F63> 黃 庭 堅 遷 謫 時 期 的 戲 作 詩 鍾 美 玲 高 苑 科 技 大 學 通 識 教 育 中 心 摘 要 受 北 宋 新 舊 黨 爭 的 影 響, 黃 庭 堅 於 紹 聖 元 年 責 授 涪 州 別 駕 黔 州 安 置, 從 此 展 開 一 連 串 遷 謫 的 命 運, 最 後 卒 於 遷 謫 地 宜 州 考 察 其 遷 謫 時 期 的 詩 歌, 有 許 多 以 戲 字 為 題 的 作 品,

More information

Microsoft Word - F5.docx

Microsoft Word - F5.docx 2 目錄 5A 5A 5A 5A 高慧冰 譚雅樂 余雅瑩 周子慧 劇本... P.4-P.5 奔跑人生... P.6 唐老師... P.7 唐老師... P.8 5B 5B 5B 5B 5B 5B 徐子盈 呂惠雅 黃智昭 熊雪瑩 鍾詠晴 吳博倫 敬愛的人... P.9 偶像... P.10 冬天... P.11 春夏秋冬... P.12 唐老師... P.13 安南讓決策從此變得簡單... P.14

More information

第十号 上市公司关联交易公告

第十号 上市公司关联交易公告 证 券 代 码 :600696 证 券 简 称 : 匹 凸 匹 编 号 : 临 2016-113 匹 凸 匹 金 融 信 息 服 务 ( 上 海 ) 股 份 有 限 公 司 关 于 出 售 匹 凸 匹 金 融 信 息 服 务 ( 深 圳 ) 有 限 公 司 100% 股 权 暨 关 联 交 易 的 公 告 本 公 司 董 事 会 及 全 体 董 事 保 证 本 公 告 不 存 在 任 何 虚 假 记

More information

Microsoft Word - 朗诵诵材.doc

Microsoft Word - 朗诵诵材.doc 2014 年 全 港 春 華 杯 普 通 話 朗 誦 及 拼 音 认 读 大 賽 朗 誦 誦 材 幼 稚 園 K1- 散 文 組 娃 娃 的 夢 花 兒 的 夢, 是 紅 的, 小 樹 的 夢, 是 綠 的, 露 珠 的 夢, 是 圓 的, 娃 娃 的 夢, 是 甜 的 幼 稚 園 K1- 兒 歌 組 小 白 兔 小 白 兔, 白 又 白, 兩 隻 耳 朵 豎 起 來, 愛 吃 蘿 蔔 和 青 菜,

More information

06-07周年報告template.PDF

06-07周年報告template.PDF 06 07 P.2 P.3 () P.4 P.5 () P.6 20062007 6 (55%) 1 (9%) 1 (9%) 1 (9%) 1 (9%) 1 (9%) (P.1,P.2 ) 5 6 6 0.5 0.5 0.5 / 0.5 P.7 P.8 0.5 0.5 2 1 6 5 2 1 6 5 (P.3P.6) 0.5 0.5 0.5 0.5 0.5 0.5 P.9 () 4 6 5 6 6

More information

<4D F736F F D20C8CBB8A3D2BDD2A9BCAFCDC5B9C9B7DDB9ABCBBECFEACABDC8A8D2E6B1E4B6AFB1A8B8E6CAE9A3A8CEE4BABAB5B1B4FABFC6BCBCB2FAD2B5BCA

<4D F736F F D20C8CBB8A3D2BDD2A9BCAFCDC5B9C9B7DDB9ABCBBECFEACABDC8A8D2E6B1E4B6AFB1A8B8E6CAE9A3A8CEE4BABAB5B1B4FABFC6BCBCB2FAD2B5BCA 600079 369 369 2015 4 7 15 16 15 16 A 2014 ... 2... 3... 9... 11... 14... 15... 16... 17... 18... 19... 23... 24 1 / / 24.49% / / 2 1 2 369 3 4 5420100000024936 617806826-4 7 8 9 420101178068264 10 369

More information