编写一个函数实现将字符串str1和字符串str2合并,合并后的字符串按其ASCII码值从小到大进行排序,相同的字符在新字符串中只出现一次。(注:需求最简单方法)

解决方案 »

  1.   

    $str1 = 'dafjslfjls';
    $str2 = 'sfjafjlashfsajfauoewuvcvnk';
    $str = $str1.$str2;
    $ar = array();
    for($i = 0; $i < strlen($str); $i ++) $ar[$str[$i]] = '';
    $ar = array_keys($ar);
    sort($ar);
    $str = implode('',$ar);
    echo $str;
      

  2.   

    //或者
    $str1 = 'dafjslfjls';
    $str2 = 'sfjafjlashfsajfauoewuvcvnk';
    $ar = array_unique(array_merge(str_split($str1), str_split($str2)));
    sort($ar);
    $str = implode('',$ar);
    echo $str;
      

  3.   

    $str1 = 'dafjslfjls';
    $str2 = 'sfjafjlashfsajfauoewuvcvnk';
    $ar = array_unique(str_split($str1.$str2));
    sort($ar);
    $str = implode('',$ar);
    echo $str;不是更简洁?
      

  4.   

    今天比较闲,凑个热闹,分数就不用给我了写完了发现唠叨更简洁——我用了一个差集+merge...其他差不多,不发了
      

  5.   

    无敌了,array_unique 受教!