昨天发布 信奥算法之数据结构——认识数组 后,在写数组应用的过程中,老韩觉得还是应该将指针和引用先讲明白。C++中的指针和引用是C++能够操作内存的一个重要原因。 先来讲一个小故事: 话说小明小时候在后山挖...
数组
在C++中,数组是一种将相同类型元素存储在一起的数据结构。当然,在其他语言,也基本都是如此。 数组有一些特点(不是优点): 固定大小:一旦创建,数组的大小就固定了,不能动态改变。 元素类型一致性:数组中...
计数排序
今天上午老韩专门去翻了下最新的NOI大纲。电子版的大纲发布页地址: https://www.noi.cn/xw/2023-03-15/788060.shtml 老韩做信奥这块也是一个学习的过程,目前我们只专注于入门级,入门级对排序的要求是 冒泡...
插入排序
在 选择排序 中我们举了一个学生排队的例子。 上体育课了,老师要排队: A老师扫了一眼参差不齐的队伍,然后拨拉着同学们的脑袋,队伍就排好了。 B老师发现队伍很长,拨拉脑袋不好排,就先找出各自最低的...
选择排序
比较一下下面两张图,可以看出来,冒泡是循环着将两个相邻的元素进行比较,一直找最大值,以此类推。 而选择排序则是用第一个元素和后面的元素挨个进行比较,每次循环都可以获取当时的最小值,以此类推。 [...
冒泡排序
在 信奥基础之初识算法 这篇文章中我们给出了一个冒泡排序的代码示例, 冒泡排序是最基础最好理解的一个排序算法。 既然叫冒泡排序,那我们首先得搞清楚这个冒泡的泡从哪儿来? 先看一张网络上搞来的图片...
二进制、十进制、进制转换
在之前的文章中已经对二进制做了简单的了解。 二进制表示法只使用两个数字——0和1。 例如,10011011就是二进制数。但C++没有提供二进制表示法来书写数字的方式。二进制数是基于2的幂。 在《C++ Primer》...
信奥赛为什么要用C++
信奥赛选择了C++作为竞赛语言,为什么呢? 我们简单的了解下编程语言的历史。 大家都知道,计算机内部是0和1的世界,我们要和计算机沟通,要指挥计算机干活,那么就得用计算机能看得懂的语言。 1946年...
C++学习(3) 变量和常量
程序编写的时候,我们一定会用到各种各样的变量或者常量。 变量:程序中可以改变其值的命名存储单元。你可以用它来存储各种数据。比如int age = 18;,这里的age就是一个整型变量,它的值可以改变。 常量:...
C++学习(2)– 类型
今天聊一聊C++中的数据类型。 在前面的文章中,我们多次见到了这一行代码: int a,b; // 声明变量a,b 今天主要就聊这一句代码。在使用一个变量的时候,要先声明它,声明它的时候就要指定它的数据类型...