Detallado completa gama de recursión (C ++)

A: completo array detallada recursivo C ++

Está bien! Sólo estaba entrando en la comunidad de Blanco
Si la explicación no está en su lugar, también quiere ala alta mono!

Dos: introducido

En primer lugar, presento nada que ver con este artículo, puede omitir, jefes esperan que la comunidad de desarrollo de juegos para mirar:

  1. Estoy frente a la presión de encontrar un trabajo para los 2020 graduados están buscando un (unidad o H5) las posiciones de desarrollo cliente de juego. (Primaria o pasante)
  2. Estoy en este trabajo para el nivel de tecnología considerada moderada, la compañía espera que han aceptado, estoy dispuesto a pagar por propia fuerza de la compañía, progresar juntos en el presente documento.
  3. Para el post relacionado, por favor haga clic en el envío de correo electrónico a mi buzón QQ ([email protected])

Tres: Código

#include "pch.h"
#include<iostream>
using namespace std;
int a = 0;
//交换
void swap(int &a, int &b)
{
	int temp;
	temp = a;
	a = b;
	b = temp;
}
//全排列递归算法
void Perm(int list[], int k, int m)
{
	//list 数组存放排列的数,K表示层 代表第几个数,m表示数组的长度
	if (k == m)
	{
		//K==m 表示到达最后一个数,不能再交换,最终的排列的数需要输出;
		for (int i = 0; i <= m; i++)
			cout << list[i];
		cout << endl;
	}
	else {
		for (int i = k; i <= m; i++)
		{
			swap(list[i], list[k]);
			Perm(list, k + 1, m);
			swap(list[i], list[k]);
		}
	}
}
int main(void)
{
	int a[] = { 1,2,3,4 };
	int m = 2;
	Perm(a, 0, m);
	/*123,132,213,231,321,312*/
}

IV: Código detalla ilustración

Aquí Insertar imagen Descripción

Cinco: Resumen

Me recursivo utilizado ha sido de media comprendida, dibujando un diagrama, los resultados pronto se dio cuenta;
recomendados para principiantes y más gráficamente, de usos múltiples lápiz y papel analizados;
estudiar mucho, espero que avanzar juntos.

Publicó un artículo original · ganado elogios 2 · vistas 46

Supongo que te gusta

Origin blog.csdn.net/Dream_TP/article/details/105374441
Recomendado
Clasificación