Codewars挑战:求反转数组的最短代码(字节数≤28,禁用reverse())
解决Codewars反转数组的字节压缩问题
嘿,刚好碰到过类似的字节高尔夫问题,我来给你个简单的优化方案!
你当前的代码是:
weirdReverse=a=>a.sort(()=>1)
确实是29字节,要压到28字节其实很简单——把排序回调里的空参数括号换成下划线就行:
weirdReverse=a=>a.sort(_=>1)
为什么这能行?
- 箭头函数规则里,如果只有单个参数,可以省略参数的括号,这里用下划线
_作为占位符参数,完全符合语法要求,比原来的()=>1少了一个字节 sort(_=>1)的逻辑和原来一致:每次比较都返回正数,sort方法就会不断交换相邻元素的位置,最终实现数组反转,完全避开了reverse()方法- 也没有修改你要求保留的
weirdReverse=a=>a核心结构,只是在后续调用的方法里做了字节优化
这样代码总长度就刚好是28字节,完美符合要求!
内容的提问来源于stack exchange,提问作者Mariusz
相关产品推荐
相关产品推荐

