目录 第1章计算机基础知识1 1.1基本常识1 1.1.1基本知识介绍1 1.1.2典型习题解析6 1.1.3知识点巩固9 1.2系统结构9 1.2.1基本知识介绍9 1.2.2典型习题解析11 1.2.3知识点巩固16 1.3软件系统17 1.3.1基本知识介绍17 1.3.2典型习题解析18 1.3.3知识点巩固20 1.4数据表示与计算21 1.4.1基本知识介绍21 1.4.2典型习题解析24 1.4.3知识点巩固29 1.5信息编码30 1.5.1基本知识介绍30 1.5.2典型习题解析33 1.5.3知识点巩固36 1.6网络基础37 1.6.1基本知识介绍37 1.6.2典型习题解析45 1.6.3知识点巩固50 第2章程序设计基础52 2.1计算机语言与算法52 2.1.1基本知识介绍52 2.1.2典型习题解析56 2.1.3知识点巩固62 2.2C++语言基础62 2.2.1基本知识介绍62 2.2.2典型习题解析64 2.2.3知识点巩固68 第3章基本数据结构70 3.1线性表70 3.1.1基本知识介绍70 3.1.2典型习题解析71 3.1.3知识点巩固73 3.2栈和队列74 3.2.1基本知识介绍74 3.2.2典型习题解析75 3.2.3知识点巩固80 3.3树81 3.3.1基本知识介绍81 3.3.2典型习题解析82 3.3.3知识点巩固86 3.4图87 3.4.1基本知识介绍87 3.4.2典型习题解析88 3.4.3知识点巩固91 3.5排序92 3.5.1基本知识介绍92 3.5.2典型习题解析97 3.5.3知识点巩固99 第4章算法与数学101 4.1应用数学101 4.1.1基本知识介绍101 4.1.2典型习题解析104 4.1.3知识点巩固109 4.2组合学110 4.2.1基本知识介绍111 4.2.2典型习题解析112 4.2.3知识点巩固117 第5章阅读程序和完善程序119 5.1阅读程序和完善程序概述119 5.2常用解题方法119 5.2.1模拟法119 5.2.2先猜测、后验证122 第6章C++基础语法127 6.1基本知识介绍127 6.1.1常量与变量127 6.1.2C++的3种基本控制结构128 6.1.3数组131 6.1.4函数132 6.2典型习题解析134 6.3知识点巩固163 第7章数据结构173 7.1基本知识介绍173 7.1.1数组173 7.1.2栈174 7.1.3队列175 7.1.4树和二叉树177 7.1.5图179 7.2典型习题解析181 7.3知识点巩固188 第8章算法193 8.1基本知识介绍193 8.1.1查找算法193 8.1.2排序算法194 8.1.3贪心算法197 8.1.4分治算法200 8.1.5回溯算法201 8.1.6动态规划204 8.2典型习题解析206 8.3知识点巩固221 附录A2019—2020年CSPJ/S第一轮认证真题试卷227 附录BCSPJ/S第一轮认证模拟试卷(2份)267 附录C部分习题参考答案290