博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IT面试之全排列
阅读量:5946 次
发布时间:2019-06-19

本文共 1023 字,大约阅读时间需要 3 分钟。

hot3.png

#include
#include
bool contains(char *pStr, char *pBegin, char *pEnd){    for(char *pCh = pBegin; pCh != pEnd; pCh++)        if(*pCh == *pEnd)            return true;    return false;}void Permutation(char *pStr, char *pBegin, int &count){    if(*pBegin == '\0')    {        printf("%s\n", pStr);        count++;    }    else    {        for(char *pCh = pBegin; *pCh != '\0'; pCh++)        {                //此处处理有重复的情况            if(contains(pStr, pBegin, pCh))                continue;            int temp = *pBegin;            *pBegin = *pCh;            *pCh = temp;            Permutation(pStr, pBegin+1, count);            temp = *pBegin;            *pBegin = *pCh;            *pCh = temp;        }    }}void Permutation(char *pStr){    if(pStr == NULL)        return;    int count = 0;    Permutation(pStr, pStr, count);    printf("total:%d\n", count);}int main(){    char str[] = "12234";    char *p = str;    Permutation(p);    return 0;}

转载于:https://my.oschina.net/gaosheng/blog/310617

你可能感兴趣的文章
LeetCode - Longest Common Prefix
查看>>
Android图片处理
查看>>
2015年第21本:万万没想到,用理工科思维理解世界
查看>>
大家谈谈公司里的项目经理角色及职责都是干什么的?
查看>>
剑指offer
查看>>
Velocity魔法堂系列二:VTL语法详解
查看>>
NopCommerce架构分析之八------多语言
查看>>
转:Eclipse自动补全功能轻松设置
查看>>
mysql update操作
查看>>
Robots.txt - 禁止爬虫(转)
查看>>
MySQL数据库
查看>>
Mysql 监视工具
查看>>
SSH详解
查看>>
ASM概述
查看>>
【290】Python 函数
查看>>
godaddy域名转发(域名跳转)设置教程
查看>>
silverlight学习布局之:布局stackpanel
查看>>
理解并自定义HttpHandler
查看>>
从前后端分离到GraphQL,携程如何用Node实现?\n
查看>>
JavaScript标准库系列——RegExp对象(三)
查看>>