学习2周C++的收获

  首先,C++是一种实用性很强的程序设计语言。它使用起来灵活、方便,运算符丰富,有结构化的层次……

  那么,我学习这个语言主要是为了参加信息学奥林匹克竞赛,这不仅要熟练地掌握一门语言,还要灵活地运用一些算法。在学习的过程中,这也使我们的思维更加活跃,解题能力大大提升。


  第一天,我们了解了一些简单的C++语言程序的实例,学习了一些运算符,如何定义变量……学会了用计算机来解决简单的数学题,这一天算是收获满满,因为学的知识偏多一些。

  再到后面,基本是一天一个模块 (算法?)

  第二天老师讲的if和switch,第三天讲的循环结构,第四天讲的数组,第五天讲的字符串,第六天讲函数……

  再到后面我们一天学一个基础算法。(高精度,排序,贪心,分治,递推,递归,搜索,动态规划……)

  在这期间我们还学了学栈、队列、树。

  临放假这几天我们学了图论(存储,最短路径,并查集……)


  学了这么多的知识,在算法(有些可能不算)方面,我个人觉得排序,搜索,动态规划很重要。

  • 排序有好多题都用的到,sort、归并排序比较快,可以节省时间。
  • 搜索的话,有些题目可以爆搜骗分(虽然我还没有体验过) ,用它也可以解决一些没有特定的计算法则的问题(走迷宫等等)
  • 动态规划可以用来解决一些关于最优化的问题,这是一种解决问题的方法,不算是一种特殊算法,但它很重要

  其它的,比如贪心算法,分治算法,他们的基本思路都很明确。贪心是在满足无后效性的前提下,把局部最优策略合成原来问题的最优解。分治是将一些较大规模的问题分解成几个较小规模的,通过对较小规模问题的求解以达到对整个问题的求解。

  但是,对于目前的我来说,我很难把它们在代码上体现出来。虽然我懂得思路,但是面对各种各样的题,灵活运用这些算法是我目前的短板。遇到一些题我常常没有思路,直到看到题解的时候才恍然大悟……所以以后我要攻克这个困难,这需要我不断刷题,找找经验;我也要多看看书,从书中再落实一些基础知识。


  在今后的学习中,我应该多刷一些关于算法的题,也要继续往后学习其他的知识。大家一起学习,共同进步。希望在以后我和同学们都能齐心协力,共创辉煌。

学习2周C++的收获的更多相关文章

  1. 【吴恩达课后测验】Course 1 - 神经网络和深度学习 - 第二周测验【中英】

    [中英][吴恩达课后测验]Course 1 - 神经网络和深度学习 - 第二周测验 第2周测验 - 神经网络基础 神经元节点计算什么? [ ]神经元节点先计算激活函数,再计算线性函数(z = Wx + ...

  2. 【吴恩达课后测验】Course 1 - 神经网络和深度学习 - 第一周测验【中英】

    [吴恩达课后测验]Course 1 - 神经网络和深度学习 - 第一周测验[中英] 第一周测验 - 深度学习简介 和“AI是新电力”相类似的说法是什么? [  ]AI为我们的家庭和办公室的个人设备供电 ...

  3. 201671010140. 2016-2017-2 《Java程序设计》java学习第二周

                                 学习第二周(Java基本程序设计结构)      这一周,着重学习了Java的简单程序设计实现及运行,通过自己操作,发现Java的程序语法大面 ...

  4. 201671010140. 2016-2017-2 《Java程序设计》java学习第一周

       java学习第一周        本周是新学期的开端,也是新的学习进程的开端,第一次接触java这门课程,首先书本的厚度就给我一种无形的压力,这注定了,这门课程不会是轻松的,同时一种全新的学习方 ...

  5. SAP成都研究院马洪波:提升学习力,增强竞争力,收获一生乐趣

    马洪波是SAP成都研究院CEC开发团队三大巨头之一.关于他的背景介绍,参考我以前的公众号文章:SAP成都研究院CEC团队三巨头之一:M君的文章预告. 其实早在2007年,互联网上已经有介绍马洪波的文章 ...

  6. H5学习第二周

    怎么说,在各种感觉中h5学习的第二周已经过来了,先总结一下,感觉学习h5是一件让我爱恨交加的事,学会一些新的知识并把它成功运行出来的时候是非常激动和兴奋的,但是有时候搞不懂一个标签或者属性的时候,就有 ...

  7. H5学习第一周

    已经接触H5一个周了,经过学习,总算对H5有了一些了解和认知,下面就总结一下我对H5的认知和感悟. 首先接触的是H5的常用标签[meta],它有其以下常用属性 1.charset属性.单独使用,设置文 ...

  8. Java学习第一周

    第一周学习了JDK的安装和环境的配置,初步了解了Java与C的不同之处,学习了Java的变量.基本数据类型.以及面向对象的基础.并且自行完成了一些简单Java程序的编写. (1)学习了为什么使用抽象类 ...

  9. IP通信基础学习第二周

    此周的课程学习应该算是我对此科目真正学校生涯的开始吧,尽管我对该科目仍感到很陌生. 课程一开头,老师就给我们简单的介绍了网络的定义.发展及其分类,重点讲了网络拓扑结构及其在局域网上具体的分层情况.该部 ...

随机推荐

  1. Python函数参数详解

    Python函数参数详解 形参与实参 什么是形参 在定义函数阶段定义的参数称之为形式参数,简称形参,相当于变量名. 什么是实参 在调用函数阶段传入的值称为实际参数,简称实参.相当于"变量值& ...

  2. 组合注解(Annotation)

    import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.an ...

  3. ajax前后端交互原理(1)

    1.Node.js简介 1.1.前后台数据交互流程 在web开发中,我们经常听说前端和后台,他们分别是做什么具体工作的呢?他们怎样交互的呢?我们得把这些基础的问题都搞明白了,才有一个大致的学习方向,首 ...

  4. HDU 5969 最大的位或【贪心】

    题目 B君和G君聊天的时候想到了如下的问题. 给定自然数l和r ,选取2个整数x,y满足l <= x <= y <= r ,使得x|y最大. 其中|表示按位或,即C. C++. Ja ...

  5. python中 _、__、__xx__() 区别及使用场景

    1.访问权限(private.public)与继承方式(只有public继承) 在面向对象编程语言中,类的属性与方法都会设置访问控制权限,从而满足我们的设计需求.一般而言,我们通常会将对象的属性设置为 ...

  6. 面向切面对象AOP

    前言 面向切面编程(思想)AOP Aspect Oriented  Programming,是面向对象基础上 更关注最终目标 而不关注中间的小目标,简而言之,就是我们的目标(例如constroller ...

  7. java语言基础(六)_String类_static_Arrays类_Math类

    String类 1. 使用 java.lang.String类代表字符串.lang包含的包不用特意引用,即默认已经引用了. API当中说:Java 程序中的所有字符串字面值(如 "abc&q ...

  8. JavaScript之DOM的增删改查

    JavaScript的组成: 1. ECMAScript-语法规范 2. Web APIs(浏览器提供的工具) (1).BOM (浏览器对象模型) (2).DOM (文档对象模型) 今天就来讲讲DOM ...

  9. windows快速安装redis

    下载地址:https://github.com/microsoftarchive/redis/releases 下载解压,命令行:redis-server.exe redis.windows.conf

  10. KMP入门

    First.先上一份最原始的无任何优化的代码(暴力): #include <iostream> #include <cstring> using namespace std; ...