假设我有一个函数f和元素数组.
函数返回A或B任何元素; 你可以用这种方式想象元素ABBAABABAA.
我需要根据函数对元素进行排序,结果是: AAAAAABBBB
A值的数量不必等于B值的数量.元素的总数可以是任意的(不固定).请注意,您不对字符进行排序,您可以对具有单个char表示的对象进行排序.
更多的东西:
O(n),有任何想法吗?
注意:如果上述情况不可能,那么您是否有牺牲上述要求之一的算法的想法?
我正在写一个简单的解析器是Scala.
我有一个基本特征,代表文件中的一个元素.
trait Token[T] {
def stringValue: String
def value: T
}
Run Code Online (Sandbox Code Playgroud)
这就是我需要的 - 字符串(文本)值和解析的值(有时会是相同的字符串).现在我想要一组子类:
class,void等+,/等等.你会如何实现这样的层次结构?由于这是有限的,所以使用案例类很好..我想.但是枚举也会很棒..如何结合?
换句话说,在Scala中以更加Scal-ish的方式编写这个(下面)的最佳方法是什么?
public interface Token<T> {
String stringValue();
T value();
}
public enum ReservedSymbol implements Token<ReservedSymbol> {
CLASS('class'), VOID('void');
private String val;
private ReservedSymbol(String val) { this.val = val; }
public String stringValue() { return val; }
public ReservedSymbol value() { return this; }
}
public class IntegerLiteral implements Token<Integer> { …Run Code Online (Sandbox Code Playgroud) 在我的node.js脚本中,我有:
var wu = require('./wu-0.1.8.js');
Run Code Online (Sandbox Code Playgroud)
只是为了和吴一起玩.
如果是在浏览器中,那么我可以在wu任何地方使用,例如
wu([1,2,3]).map( function(n){ return n*n; } );
Run Code Online (Sandbox Code Playgroud)
在node.js中的Hovever我必须写:
wu.wu([1,2,3]).map( function(n){ return n*n; } );
Run Code Online (Sandbox Code Playgroud)
是否有可能附加 wu到全局范围,以便我不必一直打字wu.wu?