function permAlone(str) {if(str.length == 1) return str;var a = str.substr(0, 1), one = [a], count = 0, toggle = true;for(var i = 0; i< str.length-1; i++) {var temp = str[i+1]; // 取出需要插入的字母one = cha(one, temp)}// 判断数组是否有连续重复的for(var k = 0; k<one.length; k++){ //获取数组中的每一项for(var l = 0; l<one[k].length-1; l++){ //遍历每一项的字符串if(one[k][l] == one[k][l+1]) { // 如果存在有连续两个相等的字母// 决策变量,判断是否合格toggle = false;break;} else {toggle = true;}}// 判断toggle 是否为trueif(toggle) count++;}return count;}permAlone('abfdefa');/*插值算法str: 需要被插入的数组v: 需要插入的字母*/function cha(str, v) {var len = str.length; // 获取数组长度var arr = [] // 最后需要返回的数组for(var i = 0; i<len; i++) {for(var j = 0; j<str[i].length+1; j++){ //需要插入的次数等于字符串长度加一var star = str[i].substring(0, j) var end = str[i].substring(j, str[i].length);var ok = star + v + end;arr.push(ok);}}return arr;}

转载于:https://www.cnblogs.com/litings/p/9400312.html

w3cshool -- 排列组合去重算法挑战相关推荐

  1. java数组排列组合_java算法题--递归求数组中数字排列组合问题

    java算法题–递归求数组中数字排列组合问题 题目:有一个数组{1,2,3},输出数组中数字的所有可能组合: 比如:123.132.213- 解题思路 通过递归不停的交换数组中的两个数(当然,肯定是有 ...

  2. python实现排列组合公式算法_朴素贝叶斯算法的Python实现

    朴素贝叶斯分类算法被广泛应用于文本分类场景中.包含垃圾邮件.互联网新闻等分类任务,属于有监督学习算法.它独立考量每一维度特征被分类的条件概率,然后综合这些概率对其所在的特征向量做出分类预测,即&quo ...

  3. python数字排列组合去重_排列组合-生成集合的所有子集

    //一个有N个不重复元素的集合的某个子集,可以用这个N个元素中每个元素在或是不在这个子集中来表示. //把这N个元素一字排开,每个位置可以用1来标识对应位置的元素在子集中,用0来标识这个元素不在子集中 ...

  4. python实现排列组合公式算法_Python实现卡尔曼滤波算法之贝叶斯滤波

    Python实现卡尔曼滤波算法之贝叶斯滤波 作者:yangjian 卡尔曼滤波器属于贝叶斯滤波器的一种特例,本文主要讲解贝叶斯滤波原理及其算法的python实现. 先来看下贝叶斯公式 贝叶斯公式 :后 ...

  5. 汽车组装c语言排列组合算法,求一个关于排列组合的算法

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include  //0->o #include #include using namespace std; template ...

  6. STL_算法(17)_排列组合 next_permutation() perv_permutation()

    next_permutation() prev_permutation() #include<iostream> #include<algorithm> #include< ...

  7. C++:排列组合算法

    转载请注明出处 1 介绍 排列(Permutation)和组合(Combination)是两个基础的数学概念. 计算排列与组合可以解决一些实际的工程问题,掌握排列组合计算的方法是十分重要的. 目前,网 ...

  8. LCP 22. 黑白方格画(排列组合)

    黑白方格画 题目:小扣注意到秋日市集上有一个创作黑白方格画的摊位.摊主给每个顾客提供一个固定在墙上的白色画板,画板不能转动.画板上有 n * n 的网格.绘画规则为,小扣可以选择任意多行以及任意多列的 ...

  9. 关于排列组合的一点点自己的见解

    因为看了很多书,貌似学习到了很多知识,可是很多东西感觉一旦翻篇了,就很容易忘记,本人又是一个习惯很不好的人,经常找不到以前记录的笔记,所以打算开一个博客,来记录自己每天工作和学习的内容,不知道能坚持多 ...

最新文章

  1. POJ1185 炮兵阵地 状压DP
  2. IBatis.Net学习笔记七--日志处理
  3. html 幻灯禁止上下滑动,幻灯片滑动Immersive Slider
  4. python基本运算符_06-Python基础知识学习---基本运算符
  5. Sql Server常用时间段查询汇总
  6. linux 下  qserialport waitforreadyread_北师大版初中数学八年级(下)第二章第一节不等关系(精品)...
  7. Netty工作笔记0070---Protobuf使用案例Codec使用
  8. js 获取select 中option 的个数
  9. vs201检查更新不成功_Kubernetes玩转Pod滚动更新123
  10. X509Certificate证书如何获取16位长度serial number?
  11. 【Windows】PPT播放视频提示媒体不可用的解决方法
  12. c语言int【】=(123456789) 元素a【】的值,算法-用C语言实现
  13. ubuntu16.04(虚拟机) 上MPD(Music Player Daemon)+MPC运行环境搭建
  14. 计算机维修志愿活动策划书,“义务维修,温暖校园”志愿服务活动策划书
  15. 第一天作业二 三级菜单的实现
  16. RHEL 7.8 64bit MYSQL linux-generic 8.0.20 初始化安装
  17. django - form
  18. javascript判断浏览器当前运行环境
  19. python编程是什么-Python编程
  20. 【高等代数】线性空间

热门文章

  1. pr图形模板预设怎么使用_PR预设模板-10套图像拼接排版LOGO标志展示片头+教程(需要ae)...
  2. 图片压缩后模糊怎么办 这5款无损压缩网站你要知道
  3. jointJS 获取path数据
  4. 雷达感应模组,自动播放讲解仪雷达应用,雷达传感器技术
  5. Python库-uiautomator2(app自动化)
  6. 中国排名前100的IT公司 (转)
  7. 《中国人工智能学会通讯》——12.15 时空众包 : 共享经济时代的新型计算范式...
  8. 快速撑握五笔输入法的末笔识别
  9. MATLAB中abs的作用
  10. java难不难学_学习Java难不难?如何学习?