ACM程序设计课程总结报告

一.前言:

   本学期选修选择了ACM程序设计这门课,当初选择这门课是因为,通过上学期C语言的学习,感觉自己对这个方向比较有兴趣,但是学的内容非常基础,自己想要真正去了解这方面的内容,跟着费老师继续深入学习,提高自己的专业能力。虽然觉得自己的水平参加比赛的希望很渺茫,还是想努力提高自己的水平和能力。通过本学期的学习,我觉得这门课程对我的编程能力很有帮助,更重要的是,在ACM这门课中学到了一些基础算法,开发了自己的思想,这些是在平时的学习中学习不到的。

   课程初始,感觉学习的内容比较基础,容易接受,但是到了后面的学习,难度开始增加,对我而言理解起来难度很大。课上跟着老师的思路还可以理解一些,到了课下自主完成题目时就感觉到力不从心,经常耗费几个小时一道题目都完成不了。

   对于这门课,我很喜欢老师的授课方式以及课下的学习方式,理论加实验上机课,课下自主学习就是刷题,自己做,做完后及时自己总结,并且写成博客发表。在ACM 这门课上,学的最多的还是思想,我觉得在费老的课上学到了一种很开放的思想,而且在讲解的同时带入日常情境,加深理解,还有解题的思路,考虑事情的方法,这些东西不管是在学习上还是别的方面都很适用。

二.知识小结:

1.STL

(1)STL(StandardTemplate Library),即标准模板库,是一个高效的C++程序库。它被容纳于C++标准程序库(C++ Standard Library)中。

(2)常用容器:

:stack是一种先进后出的数据结构,它只有一个出口,只能操作最顶端元素。

头文件: #include <stack>

操作:

empty()-- 返回bool型,表示栈内是否为空 (s.empty() );

size()-- 返回栈内元素个数(s.size() )

top()-- 返回栈顶元素值(s.top() )

pop()-- 移除栈顶元素(s.pop();)

push(data_typea) -- 向栈压入一个元素a(s.push(a);)

队列:queue是一种先进先出(First In First Out, FIFO)数据结构,从底端加入元素,从顶端取出元素。

头文件: #include <queue>

操作:empty() -- 返回bool型,表示queue是否为空(q.empty() ); 

size()-- 返回queue内元素个数 (q.size());

front()-- 返回queue内的下一个元素 (q.front());

back()-- 返回queue内的最后一个元素(q.back());

pop()-- 移除queue中的一个元素(q.pop(););p

ush(data_typea) -- 将一个元素a置入queue中(q.push(a); );

动态数组:

头文件: #include <vector>

操作:empty() -- 返回bool型,表示vector是否为空 (v.empty() );

size()-- 返回vector内元素个数 (v.size() );

push_back(data_typea) 将元素a插入最尾端;

pop_back()将最尾

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值