有没有人知道如何使用内置collection.sort和comparator<string>界面按照频率(从最小到最大)的顺序对单词列表进行排序?
我已经有一个方法可以获取文本文件中某个单词的计数.现在,我只需要创建一个方法来比较每个单词的计数,然后将它们放在按最小频率排序到最大值的列表中.
任何想法和提示将非常感谢.我在开始使用这种特殊方法时遇到了麻烦.
public class Parser implements Comparator<String> {
public Map<String, Integer> wordCount;
void parse(String filename) throws IOException {
File file = new File(filename);
Scanner scanner = new Scanner(file);
//mapping of string -> integer (word -> frequency)
Map<String, Integer> wordCount = new HashMap<String, Integer>();
//iterates through each word in the text file
while(scanner.hasNext()) {
String word = scanner.next();
if (scanner.next()==null) {
wordCount.put(word, 1);
}
else {
wordCount.put(word, wordCount.get(word) + 1);;
}
}
scanner.next().replaceAll("[^A-Za-z0-9]"," ");
scanner.next().toLowerCase();
} …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用dc.js库渲染条形图.我的csv数据集的格式如下:
q,年,类别,子类别,总数,
q1,2010,x,xa,200
q2,2010,y,yb,100
q3,2010,x,xa,300
q4,2010,z,zb,45
q1,2010, x,xa,80
q2,2010,y,yb,200
q3,2010,x,xc,301
q4,2010,z,za,205
q1,2011,x,xa,80
q2,2011,y,yb,200
q3,2011,x,xc,301
q4,2011,z,za,205
到目前为止,我能够获得一个条形图,但实际数据没有呈现给图表,x轴上的缩放也是关闭的,因为它应该是根据年份.我很难将数据附加到图表中.这就是我能得到的一切

我通过d3.csv加载数据如下:
d3.csv("records.csv", function(csv) {
var data = crossfilter(csv);
var fiscalyear = data.dimension(function (d) {
return d.year;
});
var spendGroup = fiscalyear.group().reduce(
function(p,v) {
return p.total += v.total;
},
function(p,v) {
return p.total -= v.total;
},
function() {
return {totalSpend:0};
}
);
fiscalyearchart.width(600)
.height(300)
.margins({top: 10, right: 50, bottom: 30, left: 60})
.dimension(fiscalyear)
.group(spendGroup)
.x(d3.scale.linear().domain([2010,2013]))
.renderHorizontalGridLines(true)
.centerBar(true)
.elasticY(true)
.brushOn(true);
dc.renderAll();
});
Run Code Online (Sandbox Code Playgroud) 所以我需要使用递归实现成员函数,预订和按顺序遍历二叉搜索树.我无法实现所有三个,因为他们输出错误的输出.遍历应该将它遇到的数据值添加到给定的链表中.
我的成员函数只打印出树的正确节点.我附上了我的代码,如果有人可以给我一些关于错误所在的指针以及为什么输出没有打印它应该是什么的话,那将是惊人的.提前致谢!!!
我目前得到的输出:
size of test BinaryTree: 11
member true for 8
member true for 38
member true for 39
member true for 45
pre order: [8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 38, 38, 38, 38, 38, 38, 38, 38, 39, 39, 45, 45]
in order: [8, 8, 8, 8, 38, 38, 38]
Run Code Online (Sandbox Code Playgroud)
我想要的输出:
size of test BinaryTree: 11
member true for 1
member true for 3
member true for 4
member true for 7
member …Run Code Online (Sandbox Code Playgroud)