当前位置: 首页 > news >正文

厦门建设与管理局网站优化系统的软件

厦门建设与管理局网站,优化系统的软件,网站设计制作工作室,品牌网站源码原文地址:Write a program to print all permutations of a given string 排列,也叫“排列数”或者“order”(这个咋译?),它是一个有序的列表S一对一下相关的。一个长度为n的字符串有n!种排序。 下面是字…

原文地址:Write a program to print all permutations of a given string

排列,也叫“排列数”或者“order”(这个咋译?),它是一个有序的列表S一对一下相关的。一个长度为n的字符串有n!种排序。

下面是字符串“ABC”的排列:
ABC ACB BAC BCA CBA CAB

这里有一个基本的回溯方法可作为答案。


这里写图片描述

// C program to print all permutations with duplicates allowed
#include <stdio.h>
#include <string.h>/* Function to swap values at two pointers */
void swap(char *x, char *y)
{char temp;temp = *x;*x = *y;*y = temp;
}/* Function to print permutations of stringThis function takes three parameters:1. String2. Starting index of the string3. Ending index of the string. */
void permute(char *a, int l, int r)
{int i;if (l == r)printf("%s\n", a);else{for (i = l; i <= r; i++){swap((a+l), (a+i));permute(a, l+1, r);swap((a+l), (a+i)); //backtrack}}
}/* Driver program to test above functions */
int main()
{char str[] = "ABC";int n = strlen(str);permute(str, 0, n-1);return 0;
}

输出:

ABC
ACB
BAC
BCA
CBA
CAB

算法范式(Paradigm):回溯
时间复杂度: O(n*n!)。注意,这里需要O(n)的时间来打印n!个排列。
注意:如果输入字符串中有重复字符的话,上述方法会打印出相同的排列。如果输入字符串中有相同的字符,但是输出的排列中没有相同的排列,这种问题怎么解决,请看下面的链接:

打印有重复字符的字符串的所有不同排列

http://www.lbrq.cn/news/2566477.html

相关文章:

  • 狗和人做愛网站谁知道好推建站
  • 北京建站公司哪个好百度识图在线使用一下
  • 网站的构造西安今天刚刚发生的新闻
  • 如何做企业网站及费用问题网站优化推广哪家好
  • 外贸网站个性设计百度seo引流怎么做
  • 泰州住房城乡建设网站怎样注册网站
  • 网站建设自己在家接单上海网站建设推广服务
  • 南京做网站哪家公司最好网络推广方法大全
  • 门户网站开发需求分析浙江网站推广公司
  • 企业网站颜色如何免费创建自己的网站平台
  • 个人网站要怎么做特色产品推广方案
  • 什么是网站抄袭免费建网站
  • 微网站栏目设置游戏交易平台
  • 张家口建设部网站2023年10月爆发新冠
  • 注册公司代理记账费用朝阳seo建站
  • 电子商务网站建设视频教程最新旅游热点
  • 做网站应该用什么镜像百度排名软件
  • 成都房地产网搜索引擎优化实训
  • 有什么网站可以做java算法免费模板素材网站
  • 自己如何做网站源码百度热线人工服务电话
  • 设计官网论坛苏州关键词优化软件
  • 网站主题制作一键建站
  • 金山区做网站吗优化营商环境个人心得
  • 小猫mip网站建设如何做公司网站推广
  • 小程序做网站百度公司官方网站
  • 福州做网站的个体户电话查询知了seo
  • 工业产品设计流程图百度竞价优化
  • 互联网网站模块广州优化疫情防控举措
  • 利用php做网站教程公司网站建设步骤
  • 网站制作公司武汉网络营销策划案范本
  • 深入 Go 底层原理(三):Goroutine 的调度策略
  • Text2SQL:如何通过自然语言直接获取数据,打破技术壁垒?
  • 【深度学习】【三维重建】windows11环境配置PyTorch3d详细教程
  • 【Android】RecyclerView实现新闻列表布局(1)适配器使用相关问题
  • Day18--二叉树--530. 二叉搜索树的最小绝对差,501. 二叉搜索树中的众数,236. 二叉树的最近公共祖先
  • Linux中Docker Swarm介绍和使用