青少年编程知识记录 codecoming

如何使用code::blocks编写C++代码

在前面的文章中,已经简单介绍了如何下载code::blocks了,这篇文章介绍一下如何使用code::blocks编写一个C++代码我们打开code::blocks软件,点击”New File“然后点击”Empty file“然后输入下面的代码#include<iostream> using namespace std; int main(){     cout<<"hello 
作者:亿万年的星光 分类:C++知识 浏览:

一笔画问题



【题目描述】

如果一个图存在一笔画,则一笔画的路径叫做欧拉路,如果最后又回到起点,那这个路径叫做欧拉回路。

根据一笔画的两个定理,如果寻找欧拉回路,对任意一个点执行深度优先遍历;找欧拉路,则对一个奇点执行dfs,时间复杂度为O(m+n),m为边数,n是点数。

【输入】

第一行n,m,有n个点,m条边,以下m行描述每条边连接的两点。

【输出】

欧拉路或欧拉回路,输出一条路径即可。

【输入样例】

5 5  1 2  2 3  3 4  4 5  5 1

【输出样例】

1 5 4 3 2 1

【提示】

【数据范围】

对于100%的数据:1 < n < 100,1 < m < 2000。



作者:亿万年的星光 分类:C++知识 浏览:

图的遍历



【题目描述】

给出  个点, 条边的有向图,对于每个点 ,求  表示从点  出发,能到达的编号最大的点。

【输入】

第  行  个整数 ,表示点数和边数。

接下来  行,每行  个整数 ,表示边 。点用  编号。

【输出】

一行  个整数 

【输入样例】

4 3  1 2  2 4  4 3

【输出样例】

4 4 3 4

【提示】

对于  的数据,

对于  的数据,



作者:亿万年的星光 分类:C++知识 浏览:

图的访问与遍历-广度优先搜索

对于无向图的广度优先搜索#include <iostream> #include <vector> #include <queue> using namespace std; // 广度优先遍历核心函数 void BFS(int start, const vector<vector<int>>& adjList
作者:亿万年的星光 分类:C++知识 浏览:

Code::Blocks下载安装教程

Code::Blocks 是一款免费、开源且跨平台的 C/C++ 集成开发环境。它支持 Windows、Linux 和 macOS 等多种操作系统,核心特点是轻量快速、纯专注于 C/C++ 开发,并内置了对多种编译器(如 GCC、MinGW、Clang)的支持,是初学者和学习 C/C++ 编程的常用工具之一。官网地址:https://www.codeblocks.org/ 一、下载点击左侧的”Downloads“或者点击下载地址:  https://www.codeblock
作者:亿万年的星光 分类:C++知识 浏览:

DEVC++如何支持C++11

DEVC++默认开启C++11,需要手动添加C++11支持。DEVC++需要使用高一点的版本,DEVC++5.11下载地址:(1)  官方下载地址: Dev-C++ download | SourceForge.net(2)  网盘下载地址:(访问密码: 7381)https://url47.ctfile.com/f/64055047-8504055040-c524b3?p=7381 我们打开DevC++,新建一个C++代码,#include &
作者:亿万年的星光 分类:C++知识 浏览:

图的访问与存储—临接表

        在图论中,邻接表(Adjacency List) 是表示图(包括无向图、有向图、带权图)的一种高效数据结构,核心思想是为图中的每个顶点维护一个 “邻居列表”,记录该顶点直接相连的所有顶点(及边的权重,若为带权图)。相比于邻接矩阵(用二维数组存储顶点间的连接关系),邻接表在稀疏图(边数远少于顶点数的平方) 中更节省空间,也是工程中最常用的图存储方式之一。一、基本结构邻接表的核心是 “数组 + 链表 / 动态数组” 的组合:
作者:亿万年的星光 分类:C++知识 浏览:

图的访问与遍历-深度优先搜索

一、图的遍历图的遍历是指从图中的某个顶点出发,按照一定规则访问图中所有顶点且每个顶点仅访问一次的过程,核心分为深度优先搜索(DFS) 和广度优先搜索(BFS) 两大类,适用于无向图、有向图等各类图结构,也是图论算法(如路径查找、连通性判断)的基础。关键点:连通图与非连通图:连通图(无向图):从任意顶点出发,DFS/BFS 可访问所有顶点;非连通图:需遍历所有顶点,对未访问的顶点再次调用 DFS/BFS(统计连通分量)。有向图的遍历:邻接表仅添加 “有向边”(初始化图时注释无向
作者:亿万年的星光 分类:C++知识 浏览:

混合背包

1.问题定义:混合背包问题是经典背包问题的一个变种,其中物品的类型不单一,而是混合了以下三种类型:01 背包物品:每种物品最多只能选一次。完全背包物品:每种物品可以选择无限次。多重背包物品:每种物品有指定的最大数量 s_i。目标是在背包容量为 V 的情况下,选择物品放入背包,使得总价值最大。2.问题形式化:假设有 N 种物品和一个容量为 V 的背包。第 i 件物品的体积是 v_i,价值是 w_i,数量是 s_i:如果 s_i = -1:表示这是 01 背包物品(只能选 0 或 1 次)如果 s_
作者:亿万年的星光 分类:C++知识 浏览:

多重背包问题

一、问题定义有 n 种物品,每种物品有三个属性:重量 weight[i](正整数)价值 value[i](正整数)数量 count[i](正整数,表示该物品最多可选取的次数)背包的最大承重为 W。求在不超过背包承重的前提下,能装入背包的最大总价值。二、与其他背包问题的区别背包类型物品选取限制核心差异0-1 背包每种物品最多选 1 次count[i] = 1完全背包每种物品可无限选count[i] = +∞多重背包每种物品最多选 
作者:亿万年的星光 分类:C++知识 浏览: