已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2011(1)(5)” T(1:L)”K(1:m)(”n)LTmK(mL)”? TmAAK”(K?)”aaaaaa3”aa C”13” 1 substring(const char strint indexint length)strindex”length”China todayC1(str0)5”3at C11234567891011121314char *substring(const char str, int index, int length)char *tptr=0;int k;/*”*/if (index1 | length0 | index+length-1strlen(Str) return 0;tptr=(char*)malloc(length+1)*sizeof(char);/*”*/if(tptr=0) return 0; /*”*/for(k=0; klength; k+)tptrk=strindex+k-1;tptrlength-1=0; /*“*/return tptr;1substring”()” 2 C2reverse(unsigned int n)”n12344321 (1)”123410123401044 (2)”12310123410343 (3)”12101243102432 (4)”110014321014321 C2 unsigned int reverse(unsigned int n) unsigned int result=0; while( (1) ) result=result *10+n%10; n= (2) ; return result; 22C2(1)(2)3”56712345678123462354879643”reverse”765432143218765135740063062354879643”reverse”“”C”12” naa0a0 ”compactArr_v1compactArr_v2” CompactArr(int aint n)”aa0a CompactArr_v2(int aint n)”i(0)ak(0)a0i10k1 C1 int CompactArr vl(int aint n) int i, k; int *temp=(int*)malloc(n* (1) ); if(!temp) return-1; for(i=0, k=0; in; i+) if(ai!=0) (2) =ai; for(i=0; (3) ; i+) ai=tempi; return k; C2 intCompactArr v2(intaintn) int i, k; for(i=0, k=0; in; i+) if(ai!=0) (4) =ai; return k; CompactArr_v1(1)(3)CompactArr_v2(4)2CompactArr_v1CC(1)(5)” ()” a-(b-5)*ca-(b-5)*c(”)( if Matched(char expr)”expr”Matched”Mismatched (1) (2) (3)”Mismatched“ (4)“”Matched if Matched”BOOLSTACKBOOL typedef enum Mismatched, Matched BOOL; STACK()“ void InitStack(STACK*S) void Push(STACK*S. char e)1 void Pop(STACK*S)1 char Top(STACK S)”S int IsEmpty(STACK S)S”1”0 C BOOL ifMatched(char expr) char *cptr; /*cptr*/ STACK S; char e; InitStack(S); /*/ for(cptr=expr; *cptr!=0 (1) ) if(*cptr=( | *cptr= | *cptr=() (2) ; else if(*cptr=) | *cptr= | *cptr=) if(IsEmpty(S) return Mismatched; e= (3) ;/*/ if (*cptr=) e!=( ) return Mismatched; if(*cptr= e!=) return Mismatched; if (*cptr=) e!= ) return Mismatched; (4) ;/*/ if( (5) )return Matched; return Mismatched; ”C+C+(1)(5)” “5-1Shape(”(virreal)”BoxEllipseCircle()Line C+”5-1“ Ellipse Circle Ellipse C E C+ #includestring #includeiostream using namespace Std; class Shape public: Shape(const String name) m_name=name; Shape() (1) void paint()=0; string getName()const return m_name; private: string m_name; ; /BoxLineEllipse class Ellipse (2) public: Ellipse(const String name): Shape(name)coutE1lipseend1; void paint() coutgetName()end1; ; class Circle (3) public: Circle(const string name): Ellipse(name)(coutCircleend1; ; class Diagram public: void drawAShap(Shape* shape) shape-paint(); void drawShapeS() shapes0=new Circle(C); shapes1=new Ellipse(E); for (int i=0; i2; +1) drawAShap(Shapesi); void close()( /*N$/) private: Shape* shapes2; ; int main() Diagram* diagram= (4) ; diagram-drawShapes(); diagram-close(); (5) diagram; JavaJava(1)(6)” “6-1Shape(abstract)”Box()Ellipse()Line()(extends)ShapeCircle() Java”6-1“ Ellipse Circle Ellipse C E Java (1) class Shape public Shape(String name) =name; (2) void paint(); String getName() return ; final String name; ; /BoxLineEllipse class Ellipse (3) publiC Ellipse(String name) super(name); System.out.println(Ellipse); void paint() / System.out.println(getName(); ; class Circle (4) public Circle(String name) super(name); System.out.println(Circle); ; class Diagram private Shape shapes=new Shape2; public void drawAShape(Shape shape) shape.paint(); void eraseAShape(Shape shape) / void drawShapes() shapes0=new Circle(C); shapes1=new Ellipse(E); for(int i=0; i2; +i) drawAShap(shapesi); / void close() for(int i=0; i2; +i) / (5) ; public static void main(String args) Diagram diagram= (6) ; diagram.drawShapes(); diagram.close(); ”:1L-m+1 2i+m-1 3i+1 4n+1 5A(j)=K(j)”T(1)T(2)T(L)”K(1)K(2)K(m)iT”Tm”A1T(1:m)A(1:m)2T(2:m+1)A(1:m)i”T(i:m+i-1)A(1:m)”T(L-m+1:L)A(1:m)(2)”m+i-1”m+i-1L“m+i-1L“iL-m+1”(1)”L-m+1 A(i)A(i+1)A(i+m-1)K(1)K(2)K(m)”jKj=12mAi+j-1(j=12m)”“”i1T”A”“”n”1(n+1n)(4)”n+1 AK”A(j)K(j)”K(j)?”“A(j)=K(j) or K(j)=?K(j)=?”“(5)”A(j)=K(j)”“j+1j”(3)”i+11”9if(tptr=0)return 0;if(tptr=NULL)return 0;if(!tptr)return 0;12tptrlength=0; *(tptr+length)=0;tptrk=0 *(cptr+k)=0; ”C” ” substring char *substring(const char strint indexint length) index(1)lengthsubstring”index”1length”0indexlengthindex+length-1”6 7”9”tptrtptr=0”=”“tptr 1011”str12“”lengthtptr0length-1tptrlength-1=0tptr”length2(1)n!=0n0 (2)n/10 0(1)”n!=010”(2)n/103“() ”“”1sizeof(int) 2tenlpk+ *(temp+k+) 3ik 4ak+ *(a+k+) C C“” CompactArr_v1(1)”sizeof(int) a0temp for(i=0, k=0; in; i+) if(ai!=0) (2) =ai; k”temp”(2)”tempk+“ka0(3)”ik CompactArr_v2(4)”ak+5”“”() ”CompactArr v2CompactArr_v1“”atemp”“”1cptr+ +cptr cptr+=1 cptr=cptr+1 2Push(S*cptr) 3Top(S) 4Pop(S) 5IsEmpty(S)C ”exprcptr”for”expr for(cptr=expr; *cptr!=0; (1) ) (1)”cptr+ (2)if Matched”“”Push(&S*cptr)” ”“”(3)”Top(S)(4)Pop(S) ”“”for*cptr!=0“(5)(5)”IsEmpty(S)”1virtual 2:public Shape 3:public Ellipse 4new Diagram 5deleteC+“” “DiagramShapeBoxEllipseLineCircleShape”(virtual)BoxEllipseLineShapeShapeCircle()Ellipse Shape”virtualvoid paint()=0paint()virtualEllipseShapeCircleEllipse“”pub
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年邵阳辅警招聘考试题库及完整答案详解一套
- 2025年甘南州辅警招聘考试题库及答案详解(新)
- 2025年衡水辅警协警招聘考试真题及一套参考答案详解
- 2025年金昌辅警招聘考试题库附答案详解(满分必刷)
- 2025年漳州辅警协警招聘考试备考题库及1套完整答案详解
- 2025年襄樊辅警招聘考试题库含答案详解(培优b卷)
- 2025年黄冈辅警协警招聘考试真题参考答案详解
- 2025年驻马店辅警协警招聘考试备考题库参考答案详解
- 2025年玉林辅警协警招聘考试真题附答案详解(能力提升)
- 2025年那曲辅警招聘考试题库附答案详解(巩固)
- DB42-T 2391-2025 全域国土综合整治项目实施方案编制指南
- 无讼学院实习律师培训结业考试题目含答案
- DG-TJ08-2021-2025 干混砌筑砂浆抗压强度现场检测技术标准
- 养老院护理员培训课件
- 关于畜禽交易管理办法
- 神经内科眩晕病例讨论课件
- 管制刀具班会课件
- JG/T 528-2017建筑装饰装修材料挥发性有机物释放率测试方法-测试舱法
- 林火监测与预警课件
- 会计中级职称《财务管理》电子书
- 学生学业成绩分析与进步跟踪表
评论
0/150
提交评论