本节课老师留下的思考问题可以这样写吗?

来源:7-7 Swift-函数类型

Algorithm2014

2014-11-16 10:48

var strArr = ["d", "cd", "bcd","abcd", "abcde","edf", "abb", "a"] ;

func compareTwoString(s1:String,s2:String)->Bool{

    if(countElements(s1) < countElements(s2)){

        return true ;  //长度优先

    }

    else{

        if countElements(s1) > countElements(s2){

            return false ;  //长度优先

        }

        var str1 = Array(s1) ;

        var str2 = Array(s2) ;

        for var i=0, j=0 ; i<str1.count && j<str2.count;(i++,j++){

            if str1[i] <= str2[j]{

                return true

            }

            else{

                return false ;

            }

        }

    }

    return false ;

}


sorted(strArr, compareTwoString )


写回答 关注

1回答

  • l1uyub0b0b0
    2014-11-16 15:54:55

    我没有仔细看代码细节,但是整体思路是对的。大赞!

    不过其实还能写得更简洁哦~关于这个思考问题,我在讲下一章的时候会给出我的一个实现,欢迎关注:)

玩儿转Swift

这套教程比任何的Swift中文教程深入,并且演示示例更丰富

57181 学习 · 511 问题

查看课程

相似问题