青少年编程知识记录 codecoming

【高级篇】C++中的sort函数详解

0.简介sort函数用于C++中,对给定区间所有元素进行排序,默认为升序,也可进行降序排序。sort函数进行排序的时间复杂度为n*log2n,比冒泡之类的排序算法效率要高,sort函数包含在头文件为#include<algorithm>的c++标准库中1.sort的参数sort(start,end,cmp)start:表示排序数组起始的位置end:表示排序数组结束的位置cmp:用于排序的方法,可以不填,不填默认升序2.数组中的用法#include<bits/stdc++.h&g
作者:亿万年的星光 分类:C++知识 浏览:

【排序】----插入排序

1.基本思想在要排序的一组数中,假定前n-1个数已经排好序,现在将第n个数插到前面的有序数列中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。2.过程·(1)从第一个元素开始,该元素可以认为已经被排序;·(2)取出下一个元素,在已经排序的元素序列中从后向前扫描;·(3)如果该元素(已排序)大于新元素,将该元素移到下一位置;·(4)重复步骤3,直到找到已排序的元素小于或者等于新元素的位置;·(5)将新元素插入到该位置后;·(6)重复步骤2~5。动图演示:3.参考代码#include&
作者:亿万年的星光 分类:算法 浏览:

【排序】----选择排序

1.基本思想每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在待排序的数列最前,直到全部待排序的数据排完。2.过程首先初始化最小元素索引值为首元素。依次遍历待排序数列,遇到小于该最小索引位置处的元素则刷新最小索引为该较小元素的位置。直至遇到尾元素,结束一次遍历,并将最小索引处元素与首元素交换。·初始化最小索引值为第二个待排序数列元素位置,同样的操作,可得到数列第二个元素即为次小元素;以此类推。着重在于“选”动图演示:#include<iostream>using nam
作者:亿万年的星光 分类:算法 浏览:

【排序】----冒泡排序

1.基本思想两个数比较大小,较大的数下沉,较小的数冒起来。2.过程·每次比较相邻的两个数,如果第二个数小,就交换位置。(升序或降序)·然后两两比较,一直到比较最后的数据。最终最小(大)数被交换到开始(结束)位置,这样第一个最小(大)数的位置就排好了。·继续重复上述过程,依次将第2,3…n-1个最小数排好位置。动图过程:举例说明:【1 4 3 2】第一趟排序:第一次排序:1和4比较,1小于4,不交换位置。 【1 4 3 2】第二次排序:4和3比较,4大于3,交换位置。 【1 3 4 2】第三次排序
作者:亿万年的星光 分类:算法 浏览:

C++小游戏—贪吃蛇(1)

0.前言c++小游戏来到了第二个,第二个小游戏是贪吃蛇。首先来分析一下需求。我们需要一个函数专门来绘制地图的。在地图上随机生成“食物”。按键函数,用来监听键盘事件。蛇的状态函数。移动函数等。1.参考代码#include <cstdio>#include <cstdlib>#include <windows.h>//windows编程头文件#include <time.h>#include <conio.h>//控制台输入输出头文件#de
作者:亿万年的星光 分类:趣味小程序 浏览:

C++实现走迷宫小游戏

1.简单版本简单版本是利用字符数组实现的,利用字符数组设定入口和出口,用户每次按键就刷新一下当前字符数组。参考代码:#include<stdio.h>#include<stdlib.h>#include<string.h>#include<windows.h>#include<conio.h>int main() {    char a[50][50] = { "######",   &
作者:亿万年的星光 分类:趣味小程序 浏览:

C++使用键盘控制物体移动

0.前言在前面几篇文章中,学习了键盘事件和光标移动,在这篇文章中,我们要使用键盘的上下左右键控制在控制台中出现的角色1.原理因为我们要通过移动键盘控制光标位置,那么在此之前需要提前获取到光标位置,然后再捕获键盘事件,根据按键给gotoxy函数参数,让光标移动到参数位置,然后刷新控制台,就可以实现“移动”的效果。2.获取光标当前位置函数通过下面这个函数可以获取到当前光标。void getXY()  {      HANDLE
作者:亿万年的星光 分类:趣味小程序 浏览:

C++在指定位置输出符号

0.前言需要做控制台小游戏,需要获取光标在控制台的位置,从网上查到了gotoxy()函数可以实现,但是在DEVC++环境中直接调用这个gotoxy()会报错,于是查了一些资料,把过程记录下来。1.过程实现在DEVC++环境使用gotoxy()函数需要先定义,函数定义如下:void gotoxy(int x, int y) {     COORD pos = {x,y}; &
作者:亿万年的星光 分类:趣味小程序 浏览:

C++小游戏—猜数游戏

0.游戏内容玩家猜电脑产生的数字,一个两次机会,才对了给提示,猜错减去一次机会。1.参考代码#include<iostream>#include<cstdlib>#include<ctime>using namespace std;int main() {    srand((int)time(0)); //种子    int life=2; //一共两次机会    int num =rand()%5
作者:亿万年的星光 分类:趣味小程序 浏览:

C++实现弹窗效果

1.格式C++实现弹窗效果需要用到messagebox,这个我在C#中用过,C++也有类似用法。messagebox函数,需要引入<windows.h>头文件2.简单用法#include<windows.h> using namespace std; int main() { MessageBox(NULL,"我是消息内容","我是标题",MB_OK); return 0;
作者:亿万年的星光 分类:趣味小程序 浏览: