STL库介绍与练习课件_第1页
STL库介绍与练习课件_第2页
STL库介绍与练习课件_第3页
STL库介绍与练习课件_第4页
STL库介绍与练习课件_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

STL库介绍与练习STL库介绍与练习STL库介绍与练习STL库介绍与练习标准模板库(英文:StandardTemplateLibrary,缩写:STL),是一个C++软件库,也是C++标准程序库的一部分。模板是C++程序设计语言的一个比较新的重要特征,而标准模板库正是基于此特征。标准模板库使得C++编程语言在有了同Java一样强大的类库的同时,保有了更大的可扩展性。什么是STL初中化学教学生活化,将一些知识点和学生的生活实际结合起来,有利于提高学生学习的兴趣,也有利于提高学生学习的主动性、积极性、自觉性,还有利于学生对知识点的掌握.初中化学教学生活化,教师结合教学内容与生活实际提出问题,促使学生思考,将学生由原来的配角变成主角,有利于加深学生对知识的记忆,使学生形成乐于动脑的习惯.一、初中化学教学生活化现状调查1.调查概况.调查对象:九年级学生及部分教师.调查目的:掌握学生的基本情况,为研究教学生活化准备真实的数据依据.调查方式与选题目的:为了方便统计,将问卷分成两份.一份是为学生准备的,统计学生上课的基本情况.另一份是为教师准备的,调查教师对教学生活化的理解和态度.调查设计方案:(学生问卷)为了方便学生答题,全部是选择题.其中第1~9题是关于初中生对化学的喜爱程度及其原因;第10~18题是关于学生对周围环境的了解程度及平时参加活动的状况;第19~34题是关于学生学习的基本情况;第35~42题是关于研究影响学生的因素.(教师问卷)主要是调查教师对教学生活化的理解.2.调查结果及其数据分析.在对化学学习的目的中,大部分学生倾向于考试.其中66%的学生把学习化学的目的归结于升学的需要;85.5%的父母同样关心的是学生学习的成绩;53.5%的学生将考试无关的问题放弃;44.7%的学生在遇到疑难问题时选择问老师.这说明了一个问题,学生是为了学习而学习,只是为了应付老师,应付父母,应付考试.学生对学习化学没有一种渴望的兴趣,缺乏主动性.在对学习化学的兴趣中,研究显示初中生还是有一定的兴趣的.40.3%的学生表示对于学习化学有一定的兴趣;32.1%的学生表示兴趣不大;41.5%的学生表示化学的知识点或者实验只有在有趣时才会引起他们的注意力;只有52.8%的学生表示对于自己感兴趣的问题自己会去研究;67.9%的学生表示对化学的兴趣来自于老师.这表示学生是否喜欢化学,与教师有着很大的关系.在对外界感知的程度中,结果显示学生对周围的一切不是很了解.只有15.7%的学生了解很多城市淡水资源缺乏;60.4%的学生知道自然资源十分有限;80.5%的学生对于外界的好奇心很低;64.8%的学生对科学技术的发展状况不关注.3.调查结论及启示.首先,初中生在实验能力方面缺少?C会去进行多次的实验活动.虽然大部分学生喜欢进行动手实验.教师调查显示学生在这一个方面缺乏自主设计实验的意识,也缺乏实验方面的必要知识.其次,在解释化学理论问题与得到结论的过程中,需要得到教师的指导和帮助.主要是因为在传统的教学过程中更加偏重理论教育,缺乏理论与现实的联系.最后,对于与化学有关的现象提出猜想的能力方面表现不足,即使提出了假设和问题,在辨证的时候也说不出有力的证据,需要教师进行有力的引导,才能自圆其说.二、实践策略――利用教学资源体现生活化1.充分利用校内资源.校内教学资源包括校内的各种场所和设施,如图书馆、实验室、专用教室、信息中心等;校内人文资源,如教师群体、师生关系、班级组织、学生团体等.校内资源是实现教学目的,促进学生全面发展的最基本、最便利的资源,教师应该充分利用起来.2.重视利用校外资源.校外资源丰富多彩,有社会提供的科普教育资源,如书店可利用的科学教育资源等;有可以作为科学教育的简介社会资源,如化工厂、污水处理厂、农场等.为了更好地利用这些资源,教师应该积极开展利用这些资源的各种探究活动,将它们与教学内容相结合.3.营造和谐融洽的教学氛围.在教学过程中,人际关系也是一种教学资源.这种人际关系主要是指教师与教育管理者、教师之间、师生之间以及学生之间的相互合作与情感交流.这种相互合作与情感交流,可以营造一种和谐融洽的教学氛围.在这种教学环境中,才能顺利开展教学研究工作.4.借助现代教育技术手段.现代教育技术手段有其独特的技术优势.在初中化学教学中,对于微观的或抽象的知识,如物质的微观结构,原子和分子等微观粒子的运动等内容,只靠文字解释很难让学生理解,而借助现代教育技术手段,设计、编制成质量较高的化学课件,把抽象的知识具体化,有利于学生深刻理解化学知识.总之,化学是一门与生活息息相关的学科,生活中的化学知识是启蒙教育的重要因素,教师要将它们与课本知识结合起来,使学生感受到课本知识学习的意义和作用,并意识到学习的价值和责任,增强学生学习化学的兴趣和动机,从而提高教学效果.听、说、读、写是英语学习者应掌握的四项基本技能,在过去由于受传统的应试教育的影响,再加上高考指挥棒的指引,中学英语教学中普遍存在重“读写”技能而轻“听说”的现象。调查中我们着重考察了一些学校的师资情况,教辅设备配置情况以及受这二者影响和制约的学生情况,调查结果如下。一、师资情况教师作为教学活动的组织者和主体之一,在整个教学活动中起着十分重要的作用。教师素质如何,直接影响着教学质量,因此我们此次调查的重点就是师资情况,我们共对我市的五所农村中学进行了调查,调查结果如下表1。从以上表格中我们可以清楚地看到农村中学英语教师的整体情况有以下几个特点:1.学历不符合或不完全符合国家教委要求。2.部分教师在教学中没能及时转变角色,仍以自我为中心。3.教学语言多用母语。二、教辅人员的配置和使用情况课堂教学过程是信息的传递过程,教学媒体是这一过程中老师与学生之间的媒介,用于传授知识和培养学生的能力。教学媒介主要分传统媒介(指教科书、黑板、挂图与实物等)和现代教学媒介(包括幻灯机、投影机、录象机、语言试验室及计算机等)。随着社会的发展,科技的不断更新,教学手段也日趋多样化。由于现代教学媒体有利于创造良好的语言交际环境,可加深学生对语言知识的理解,减少教学难度,有利于提高教学效率,扩大新知识量和有利于调动学生学习积极性等优点,越来越受到广大师生的喜爱,并且在现代教学中也发挥着越来越重要的作用。三、学生情况作为教学活动主体之一的学生情况受教师素质和教学手段的影响很大,但同时学生状况反过来对教师的教学活动产生影响和制约,教师无论采取哪一种教法都不能脱离学生实际情况,否则再好的教法也不可能发挥其应有作用而产生好的教学效果。调查中我们发现农村中学的学生在听力方面有以下一些特点。1.学生基本功不扎实,存在很多影响其听力理解的不利因素,如语言知识不足,反应速度慢,背景知识缺乏等。而其中语言不足对学生影响最大,因为语言知识的高低决定了听力理解能力的强弱及反应速度的快慢,语言知识的障碍具体表现在语音障碍、语速障碍、词汇、语法障碍,而这三者中又以前者表现最为突出。大多数学生的发音不够准确,而其中尤以重音及双元音出错为多。2.学生对英语听力重视程度不够。我们曾向200名接受调查的学生发放了一份调查表,内容涉及对英语听力训练所投入的时间,以及对英语听力训练的看法。在回收的183份有效表格中只有48位同学回答经常训练,有72位同学认为进行听力训练完全是浪费时间,还不如将时间用到其它方面或许还可以提高点分数;还有一部分同学认为听力训练短时间不出成绩;或者认为找不出合适的训练方法,因此很少训练。3.学生对英语听力在认识上存在错误,缺乏必要的听力技巧,在听的过程中很多学生并不是立足于听懂文章的意思,而是想把每一个单词每一个句子都听明白,结果导致抓不住听文章的重点,连文章的基本意思也没能听明白。4.影响农村学生听力还有一个非常关键的因素,那就是学生的心理障碍。听力理解过程是一个非常复杂的心理活动过程。心理学告诉我们当人们的情绪处于紧张焦虑的状态时,就易产生恐惧心理。部分学生一遇到不理解的单词或句子就烦躁不安,有些学生甚至在还没有听之前就有畏难情绪,这就在无形中设置了信息输入的屏障,降低了信息加工的有效性,从而影响了对听力材料的理解程度。四、提高农村中学英语听力教学应采取的对策分析对以上农村中学存在的种种问题,我们认为制约农村中学英语听力教学的关键是英语教师的素质。要从根本上解决农村中学英语听力教学中存在的问题,首要问题是全面提高农村中学英语教师的素质。1.要全面提高农村中学英语教师的素质有很多途径,比如可以通过补充新的高素质的英语教师来充实农村中学的英语教学。但是最切实可行的办法我们认为还是对广大农村中学英语教师进行岗位培训,岗位培训的方法有多种,如外出听课、学习,参与教研员组织的集体备课、研讨等。2.应当大力加强有关听力教学教法,特别是针对农村中学实际情况的英语听力教学教法的研究。由于某种原因,现对英语听力教学教法的研究还很少进行,而针对农村中学现状的听力教学教法的研究还几乎处于空白状态,这对于搞好农村中学英语听力教学和提高农村中学英语教师素质都是很不利的。五、农村中学英语听力教学教法应注意的原则1.要有趣味性。兴趣是最好的老师,只有能够引起学生的兴趣,调动学生的学习积极性,才能产生良好的教学效果。2.要循序渐进,坚持不懈。农村中学听力教学要从基础抓起,不能脱离学生实际,提出过高标准和要求,影响学生兴趣的培养。另外,也不能把听力训练放在临近考试前几周突击。所谓“冰冻三尺非一日之寒”这句话也适用于听力。由于连读、失去爆破、弱读、重音移动等语音现象引起的困难;由于不熟悉英美的习惯、风土人情文化特征和兴趣爱好等,所听材料虽无生词,但却听不懂内容,造成理解的困难;由于中学生听时过分紧张,本来可以听懂的也听不懂了,过分注意每一个音,每一个节,每一个词,而引起听力心理障碍。中国学生听英语本身就存在这些困难,所以更不应该平时置听力于不顾,应该坚持不懈地训练听力。3.要有可操作性。即要适应农村中学师资及教辅设备配置情况,这些教法对老师素质要求不能过高,老师只需简单的英语表达和简单的设备即组织起课堂教学活动。4.要用科学的方法进行听力训练如何进行听力训练呢?我们认为如下。(1)教师应该尽可能多地运用课堂用语,用英语组织教学,积极创设语言环境。(2)采取分散与集中相结合。(3)在进行听力训练时,最重要的是教给学生方法。下面介绍几种适用于农村中学的听力教法。一是适应于课堂内的。完全身体反应;描述和猜测;分类;讲故事;画具游戏;实物游戏;假设情景对话、旅游游戏;组织学校英语教学条件有限,辩音、听音训练难于在听音室进行,教师充分利用早读时间,将学生组织成4人的语音训练小组。二是英语课外活动。英语会话小组;英语晚会;英语听说兴趣组;英语角。以上只是提出了几种适用于农村中学课堂内外的听力训练的方法,谨供同仁们参考。STL库介绍与练习标准模板库(英文:StandardTemplateLibrary,缩写:STL),是一个C++软件库,也是C++标准程序库的一部分。模板是C++程序设计语言的一个比较新的重要特征,而标准模板库正是基于此特征。标准模板库使得C++编程语言在有了同Java一样强大的类库的同时,保有了更大的可扩展性。什么是STLSTL是C++的ANSI/ISO标准的一部分,可以用于所有C++语言编译器和所有平台(Windows/Unix/Linux..)。STL的同一版本在任意硬件配置下都是可用的;STL提供了大量的可复用软件组织。例如,程序员再也不用自己设计排序,搜索算法了,这些都已经是STL的一部分了。嘎嘎,有意思吧。使用STL的应用程序保证了得到的实现在处理速度和内存利用方面都是高效的,因为STL设计者们已经为我们考虑好了。使用STL编写的代码更容易修改和阅读,这是当然的啦。因为代码更短了,很多基础工作代码已经被组件化了;使用简单,虽然内部实现很复杂。虽然,STL的优点甚多,但是STL的语法实在令初学者人头疼,许多人望而却步。可是STL是每个C++程序设计者迟早都要啃的一块骨头。为什么要使用STL容器:可容纳各种数据类型的数据结构。迭代器:可依次存取容器中元素的东西算法:用来操作容器中的元素的函数模板。例如,STL用sort()来对一个vector中的数据进行排序,用find()来搜索一个list中的对象。函数本身与他们操作的数据的结构和类型无关,因此他们可以在从简单数组到高度复杂容器的任何数据结构上使用。比如,数组intarray[100]就是个容器,而int*类型的指针变量就可以作为迭代器,可以为这个容器编写一个排序的算法STL的组成可以用于存放各种类型的数据(基本类型的变量,对象等)的数据结构。容器分为三大类:1)顺序容器

vector:后部插入/删除,直接访问

deque:前/后部插入/删除,直接访问

list:双向链表,任意位置插入/删除

2)关联容器

set:快速查找,无重复元素

multiset:快速查找,可有重复元素

map:一对一映射,无重复元素,基于关键字查找

multimap:一对一映射,可有重复元素,基于关键字查找前2者合称为第一类容器3)容器适配器

stack:LIFO

queue:FIFO

priority_queue:优先级高的元素先出容器概述对象被插入容器中时,被插入的是对象的一个复制品。许多算法,比如排序,查找,要求对容器中的元素进行比较,所以,放入容器的对象所属的类,还应该实现==和<

运算符。容器概述常用举例minmaxswap的使用sort的使用vector的使用map的使用set的使用stack的使用queue的使用priority_queue的使用#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>usingnamespacestd;intmain(){ inta=2,b=3; printf("%d%d\n",max(a,b),min(a,b)); swap(a,b); printf("%d%d\n",a,b); system("pause");}结果输出:

32 32minmaxswap的使用对数组使用sort排序,输入85169#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>usingnamespacestd;intmain(){ inta[5]; for(inti=0;i<5;++i)scanf("%d",&a[i]); sort(a,a+5); for(inti=0;i<5;++i)printf("%d",a[i]); system("pause");}结果输出:

15689sort的使用二级排序,坐标排序,输入(2,3)(4,2)(1,7)(2,4)优先按x小的排序,x一样按y小的排序structnode{ intx,y;}p[4];boolcmp(nodea,nodeb){ if(a.x==b.x)returna.y<b.y; returna.x<b.x;}sort的使用sort的使用intmain(){ for(inti=0;i<4;++i)scanf("%d%d",&p[i].x,&p[i].y); sort(p,p+4,cmp); for(inti=0;i<4;++i)printf("%d%d\n",p[i].x,p[i].y); system("pause");}结果输出:

17 23 24 42Inta[]={1,2,4,6};next_permutation(a,a+4)prev_permutation(a,a+4)sort(a,a+4)reverse(a,a+4)lower_bound返回大于等于指定元素的位置upper_bound返回大于指定元素的位置Inta[]={1,2,4,6};Intind=Lower_bound(a,a+4,4)-a;其它常见算法相当于数组,常用的添加、删除、清空、测长操作#include<iostream>#include<cstdio>#include<cstring>#include<vector>usingnamespacestd;intmain(){ vector<int>a;

for(inti=0;i<5;++i){ a.push_back(i);//把元素i按顺序放到a里

} for(inti=0;i<a.size();++i)//a.size()测量a的元素个数

printf("%d",a[i]);vector的使用 puts(""); //vector容器指针指向第一个元素

vector<int>::iteratorit=a.begin();

a.erase(it+2);//删除第三个

for(inti=0;i<a.size();++i) printf("%d",a[i]); system("pause");}结果输出:

01234 0134vector的使用对杂乱无序的字符串或数字做哈希匹配,可以重新编号,输入一些英文名字,给他们编号#include<iostream>#include<cstdio>#include<string>#include<map>usingnamespacestd;intmain(){ map<string,int>mp;

stringnm[]={"abc","david","lucy","abc","app","lucy"}; intindex=1; for(inti=0;i<6;++i){ if(mp[nm[i]]==0)mp[nm[i]]=index++; //判断是否已经出现过,没出现过,就编号

}map的使用 map<string,int>::iteratorit;//map容器的指针

for(it=mp.begin();it!=mp.end();++it){ cout<<it->first<<""<<it->second<<endl; //按字典序输出每个的编号

} system("pause");}结果输出:

abc1 app4 david2 lucy3map的使用set可以插入很多值,去掉重复元素,并可以查找#include<iostream>#include<cstdio>#include<string>#include<set>usingnamespacestd;intmain(){ set<string>st; stringnm[]={"abc","david","lucy","abc","app","lucy"}; for(inti=0;i<6;++i)st.insert(nm[i]);//st里插入元素

set<string>::iteratorit;//set容器的指针

for(it=st.begin();it!=st.end();++it){ cout<<*it<<endl;//按字典序输出

} it=st.find("app"); if(it!=st.end())cout<<"find"<<""<<"app"<<endl; elsecout<<"can'tfind"<<""<<"app"<<endl;set的使用 //找到了就输出find,找不到就输出can'tfind it=st.find("bld"); if(it!=st.end())cout<<"find"<<""<<"bld"<<endl; elsecout<<"can'tfind"<<""<<"bld"<<endl; for(set<string>::iteratorit=st.lower_bound("dad");it!=st.end();++it){ cout<<*it<<''; } cout<<endl;}结果输出:abcappdavidlucyfindappcan'tfindblddavidlucyset的使用stack几个主要函数:empty()堆栈为空则返回真pop()移除栈顶元素(不会返回栈顶元素的值)push()在栈顶增加size()返回栈中元素数目top()返回栈顶元素stack的使用例子:#include<iostream>#include<cstdio>#include<cstring>#include<stack>usingnamespacestd;intmain(){inta[]={1,3,5,7,9,11};stack<int>st;inti;if(st.empty()){for(i=0;i<3;++i)st.push(a[i]);}stack的使用stack的使用for(inti=0;i<2;++i){printf("%d",st());st.pop();}printf("\n");for(inti=3;i<6;++i)st.push(a[i]);printf("Thesizeofstackis%d\n",st.size());intn=st.size();for(inti=0;i<n;++i){printf("%d",st());st.pop();}printf("\n");system("pause");}输出结果:53Thesizeofstackis411971请按任意键继续...queue几个主要函数:empty()队列为空则返回真pop()移除队首元素push()在队尾增加元素size()返回队列元素数目front()返回队首元素back()返回队尾元素queue的使用例子:#include<iostream>#include<cstdio>#include<cstring>#include<queue>usingnamespacestd;intmain(){inta[]={1,3,5,7,9,11};queue<int>qu;inti;if(qu.empty()){for(i=0;i<3;++i)qu.push(a[i]);}queue的使用printf("Frontis%dandBackis%d\n",qu.front(),qu.back());for(inti=0;i<2;++i){qu.pop();printf("Frontis%dandBackis%d\n",qu.front(),qu.back());}for(inti=3;i<6;++i)qu.push(a[i]);printf("Thesizeofqueueis%d\n",qu.size());intn=qu.size();printf("Frontis%dandBackis%d\n",qu.front(),qu.back());for(inti=0;i<n-1;++i){qu.pop();printf("Frontis%dandBackis%d\n",qu.front(),qu.back());}system("pause");}queue的使用输出结果:Frontis1andBackis5Frontis3andBackis5Frontis5andBackis5Thesizeofqueueis4Frontis5andBackis11Frontis7andBackis11Frontis9andBackis11Frontis11andBackis11请按任意键继续...queue的使用stack和queue用法很相似不过原理不一样,前者是先进后出,后者是先进先出stack和queue的类型除了int,double,float等外,也可以也struct形式比如:structnode{intx,y;}a[6];

queue<node>qu;stack简介准容器类说明顺序性容器vector从后面快速的插入与删除,直接访问任何元素deque从前面或后面快速的插入与删除,直接访问任何元素list双链表,从任何地方快速插入与删除关联容器set快速查找,不允许重复值multiset快速查找,允许重复值map一对多映射,基于关键字快速查找,不允许重复值multimap一对多映射,基于关键字快速查找,允许重复值容器适配器stack后进先出queue先进先出priority_queue最高优先级元素总是第一个出列STL标准容器类简介

默认构造函数提供容器默认初始化的构造函数。复制构造函数将容器初始化为现有同类容器副本的构造函数析构函数不再需要容器时进行内存整理的析构函数empty容器中没有元素时返回true,否则返回falsemax_size返回容器中最大元素个数size返回容器中当前元素个数operator=将一个容器赋给另一个容器operator<如果第一个容器小于第二个容器,返回true,否则返回false,operator<=如果第一个容器小于或等于第二个容器,返回true,否则返回falseoperator>如果第一个容器大于第二个容器,返回true,否则返回falseoperator>=如果第一个容器大于或等于第二个容器,返回true,否则返回falseoperator==如果第一个容器等于第二个容器,返回true,否则返回falseoperator!=如果第一个容器不等于第二个容器,返回true,否则返回falseswap交换两个容器的元素所有标准库共有函数begin该函数两个版本返回iterator或const_iterator,引用容器第一个元素end该函数两个版本返回iterator或const_iterator,引用容器最后一个元素后面一位rbegin该函数两个版本返回reverse_iterator或const_reverse_iterator,引用容器最后一个元素rend该函数两个版本返回reverse_iterator或const_reverse_iterator,引用容器第一个元素前面一位erase从容器中清除一个或几个元素clear清除容器中所有元素insert插入元素Size(),empty(),max_size()关于容器大小的操作顺序容器和关联容器共有函数#include<iomanip>#include<iostream>#include<queue>usingnamespacestd;#defineout(x)(std::cerr<<std::boolalpha<<"Line"<<__LINE__<<":"<<#x<<":"<<(x)<<std::endl)intmain(){ priority_queue<int>q; q.push(3); q.push(2); out(q()); out(q()); out(q.size());}输出结果:Line12:q():3Line13:q():3Line14:q.size():2priority_queue31structpoint{ intx,y; point(intxx,intyy):x(xx),y(yy){}};booloperator<(constpoint&a,constpoint&b){ returna.x<b.x||a.x==b.x&&a.y<b.y;}ostream&operator<<(ostream&out,constpoint&p){ returnout<<"("<<p.x<<','<<p.y<<')';}intmain(intargc,char**argv){ pointa(1,2),b(1,3); cout<<boolalpha<<(a<b)<<endl; cout<<a<<endl; cout<<b<<endl;}运算符重载大家做一下POJ2442#include<cstdio>#include<set>usingnamespacestd;intmain(){ inta,b; while(2==scanf("%d%d",&a,&b)){ a+=b; set<int>st; while(a--){ intx; scanf("%d",&x); st.insert(x); } for(set<int>::iteratorit=st.begin();it!=st.end();++it){ if(it!=st.begin())printf(""); printf("%d",*it); } puts(""); } return0;}A#include<algorithm>#include<cstdio>usingnamespacestd;inta[1000000];intmain(){ intcas,n; scanf("%d",&cas); while(cas--&&1==scanf("%d",&n)){ for(inti=0;i<n;++i){ scanf("%d",&a[i]); } sort(a,a+n); for(inti=0;i<n;++i){ if(i)printf(""); printf("%d",a[i]); } puts(""); } return0;}H#include<stack>#include<cstdio>usingnamespacestd;chartmp[65535];intmain(){ while(gets(tmp)){ for(inti=0,c=0;tmp[i];++i){ if(tmp[i]=='(')++c; elseif(tmp[i]==')')--c; elseif(tmp[i]=='B'){ printf("%d\n",c); break; } } } return0;}K#include<stdio.h>#include<string.h>intmain(){ intn,i,j,k,t,r[23],stack[13]; charsi[13],so[13]; while(1==scanf("%d",&n)){ memset(r,0,sizeof(r)); memset(stack,0,sizeof(stack)); scanf("%s%s",si,so); stack[1]=si[0]; r[0]=1; for(k=t=j=1,i=0;so[i]!='\0';i++){ while(t<n){ if(j>0&&stack[j]==so[i]){//出栈

j--; r[k++]=2;//记录进出栈的情况

break; } stack[++j]=si[t++];//进栈

r[k++]=1;//记录进出栈的情况

} if(stack[j]==so[i]){//出栈

j--; r[k++]=2;//记录进出栈的情况

} } n=n<<1; if(k<n){ puts("No."); }else{ puts("Yes."); for(i=0;i<k;i++) switch(r[i]){ case1: puts("in"); break; case2: puts("out"); break; } } puts("FINIS

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论