美文网首页
乱序字符串重排

乱序字符串重排

作者: Hasan_hs | 来源:发表于2020-11-25 17:07 被阅读0次

为什么会有这个小东西

就是因为在学习某个文档的时候是乱序的,看起来和使用起来忒难受,所以为了达到想要的效果随便写了一个“能用”的重排代码

原始数据

513. player 557. phone 601. cause 645. economy
514. agree 558. either 602. hair 646. medical
515. especially 559. data 603. look 647. hospital

想要效果

513 .  player

514 .  agree

515 .  especially

557 .  phone

558 .  either

559 .  data

601 .  cause

602 .  hair

603 .  look

645 .  economy

646 .  medical

647 .  hospital

代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        div{
            display: flex;
            flex-wrap: wrap;
        }
        p{
            width: 50%;
        }
    </style>
</head>
<body>
    <div id='q'></div>
    <script>
        
        //原始字符串
        //此程序仅限以下格式字符串转进行重排
        var string = `513. player 557. phone 601. cause 645. economy
514. agree 558. either 602. hair 646. medical
515. especially 559. data 603. look 647. hospital`;
        string+='648.最后一个'
        var stringSplit = string.split(".");
        var newLists = [];
        var newString = '';
        var state = 0;
        var num = 0;
        var num2 = 0;
        for(var j = 0;j<stringSplit.length;j++){
            if (new RegExp("[0-9]").test(stringSplit[j])) {//包含
                for(var z= 0;z<stringSplit[j].length;z++){
                    if(!isNaN(stringSplit[j][z])){//是数字
                        if(state == 0){
                            if(num ==0){
                                newString+=  ",";
                            }
                            
                            newString+=  stringSplit[j][z];
                        }else{
                            newString+=  stringSplit[j][z];
                        }
                        num++;
                        num2++;
                    }else{
                        if(num2 != 0){
                            newString+=  "."+stringSplit[j][z];
                        }else{
                            newString+=  stringSplit[j][z];
                        }
                        num2 = 0;
                        num = 0;
                        
                    }
                }
            }else{//不包含
                console.log(false)
                newString+= stringSplit[j];
            }
        }
        var gg = newString.substr(1)
        newLists = gg.split(",")
        var b = newLists.sort((a,b)=>{
            if(parseInt(a.split(".")[0]) > parseInt(b.split(".")[0])){
                return 1;
            }else{
                return -1;
            }
            
        });
        let c =  document.getElementById("q");
        for(var i =0;i<b.length;i++){
            var br = document.createElement("p");
            br.innerHTML =  b[i].split('.')[0]+".&nbsp;  "+b[i].split(".")[1];
           c.appendChild(br)

        }
    </script>
</body>
</html>

相关文章

  • 乱序字符串重排

    为什么会有这个小东西 就是因为在学习某个文档的时候是乱序的,看起来和使用起来忒难受,所以为了达到想要的效果随便写了...

  • 乱序执行(指令重排)

    乱序执行(指令重排) 是这样说的: private static Service service = null...

  • Lintcode-乱序字符串

    问题描述如下:给出一个字符串数组S,找到其中所有的乱序字符串(Anagram)。如果一个字符串是乱序字符串,那么他...

  • 乱序字符串

    给出一个字符串数组S,找到其中所有的乱序字符串(Anagram)。如果一个字符串是乱序字符串,那么他存在一个字母集...

  • 【Java并发编程与高并发解决方案】JAVA内存模型JMM以及乱

    出现线程安全问题,一般是因为主存和工作内存数据不一致以及重排序,那今天就说一下这两个方面。 乱序执行优化 乱序执行...

  • Volatile禁止指令重排

    以下截图及相关信息,均来源于马士兵公开课中 Volatile 禁止指令重排 CPU 存在乱序执行,Volatile...

  • 指令重排序和内存屏障

    一:指令重排序 指令乱序有两种情况,一种是编译器做的优化,另外一种就是cpu流水线操作指令的延迟性。指令重排序是指...

  • WebRTC视频接收缓冲区基于KalmanFilter的延迟模型

    在WebRTC的视频处理流水线中,接收端缓冲区JitterBuffer是关键的组成部分:它负责RTP数据包乱序重排...

  • TCP 滑动窗口原理

    TCP 滑动窗口 TCP 使用滑动窗口做流量控制与乱序重排 RTT 和 RTO RTT发送一个数据包到收到对应的 ...

  • LintCode 乱序字符串

    今天做了一道中等难度的字符串题目,这道题目花了我两个小时,不过也做了不少的思考,写篇日志记录一下我的思考过程。 首...

网友评论

      本文标题:乱序字符串重排

      本文链接:https://www.haomeiwen.com/subject/rsvniktx.html