小编Mec*_*ail的帖子

查找目录中的文件数

Linux中是否有任何方法可以计算O(1)中目录(即直接子节点)中的文件数(与文件数无关),而无需先列出目录?如果不是O(1),是否有合理有效的方法?

我在寻找替代方案ls | wc -l.

linux directory shell file counting

25
推荐指数
2
解决办法
3万
查看次数

在Java中按值映射自动排序

我需要在Java中有一个自动按值排序的映射 - 这样当我添加新的键值对或更新现有键值对的值时,它会随时保持排序,甚至删除一些条目.

还请记住,这张地图将会非常庞大​​(数百万,甚至是数百万条的大小).

所以基本上我正在寻找以下功能:

假设我们有一个实现上述功能的"SortedByValuesMap"类,我们有以下代码:

SortedByValuesMap<String,Long> sorted_map = new SortedByValuesMap<String, Long>();
sorted_map.put("apples", 4);
sorted_map.put("oranges", 2);
sorted_map.put("bananas", 1);
sorted_map.put("lemons", 3);
sorted_map.put("bananas", 6);

for (String key : sorted_map.keySet()) {
  System.out.println(key + ":" + sorted_map.get(key));
}
Run Code Online (Sandbox Code Playgroud)

输出应该是:

bananas:6
apples:4
lemons:3
oranges:2
Run Code Online (Sandbox Code Playgroud)

特别是,对我来说真正重要的是能够随时获得具有最低值的条目 - 使用如下命令:

smallestItem = sorted_map.lastEntry();
Run Code Online (Sandbox Code Playgroud)

哪个应该给我'橘子'条目

编辑:我是一个Java新手所以请详细说明你的答案 - 谢谢

EDIT2:这可能会有所帮助:我正在使用它来计算大文本文件中的单词(对于那些熟悉的人:特别是n-gram).所以我需要建立一个地图,其中键是单词,值是这些单词的频率.但是,由于限制(如RAM),我想只保留X最常用的单词 - 但事先你不能知道哪些是最常用的单词.因此,我认为它可能起作用的方式(作为近似)是开始计算单词,当地图达到上限(如1 mil条目)时,将删除最不频繁的条目,以便将地图的大小保持为总是1密耳.

java collections associative-array sorted data-structures

25
推荐指数
1
解决办法
2万
查看次数

为什么Scala列表没有大小字段?

来自Java背景,我想知道为什么List在Scala中没有size类似Java等效的字段LinkedList.毕竟,使用大小字段,您将能够在常量时间内确定列表的大小,那么为什么大小字段会被删除?

(这个问题涉及Scala 2.8及更高版本中的新集合类.另外,我指的是不可变的List,而不是可变的.)

java scala list data-structures

25
推荐指数
4
解决办法
1万
查看次数

我可以在for循环的初始化中声明不同类型的变量吗?

为什么这个C++代码不能在VS2010下编译:

for ( int a = 0, short b = 0; a < 10; ++a, ++b ) {}
Run Code Online (Sandbox Code Playgroud)

虽然这个做了:

short b = 0;
for ( int a = 0; a < 10; ++a, ++b ) {}
Run Code Online (Sandbox Code Playgroud)

是否禁止在for-loop初始化程序中声明两个不同类型的变量?如果是这样,你怎么解决它?

c++ scope for-loop initializer variable-declaration

24
推荐指数
2
解决办法
5150
查看次数

实现定义类型的格式说明符,如time_t

我想让我的代码更加平台/实现独立.time_t在编译代码时,我不知道将在平台上实现什么.我如何知道t要确定使用哪种格式说明符的类型?

...
time_t t = time(NULL);
printf("%s", t);
...
Run Code Online (Sandbox Code Playgroud)

c printf typedef time-t

24
推荐指数
3
解决办法
2万
查看次数

使用javascript检测方向的变化

是否可以使用javascript检测iPad或Galaxy Tab上浏览器方向的变化?我认为使用css媒体查询是可能的.

javascript css accelerometer ipad galaxy-tab

23
推荐指数
4
解决办法
3万
查看次数

什么是' - '的ASCII字符代码?

我正在解码文本.我试图在ASCII中找到该字符的字符代码,而不是被误认为-.我尝试过失败了.有谁知道如何转换它?

unicode ascii character-encoding special-characters

23
推荐指数
3
解决办法
6万
查看次数

.NET中实际上有COBOL吗?

我刚才正在查看微软的Visual Studio页面,在广告边栏中,我突然看到了一个令人难以置信的广告:

"Net Express是一个COBOL开发环境,用于将核心业务流程扩展到.NET Framework和其他分布式平台."

当然我按照链接找到了一家这样做的公司,但还有那些地方还在使用COBOL吗?有没有人在.NET框架中实际使用COBOL?

编辑:感谢大家的以下信息,我今天肯定学到了一些东西!

.net cobol microfocus

22
推荐指数
4
解决办法
2万
查看次数

C#条件运算符不是语句?

我有一个简单的小代码片段令我感到沮丧:

HashSet<long> groupUIDs = new HashSet<long>();
groupUIDs.Add(uid)? unique++ : dupes++;
Run Code Online (Sandbox Code Playgroud)

在编译时,它会生成错误:

只有赋值,调用,递增,递减和新对象表达式才能用作语句

HashSet.Add 记录为返回bool,因此三元(?)运算符应该工作,这看起来像是一种完全合法的方式来跟踪我添加到哈希集的唯一和重复项的数量.

当我将其重新格式化为if-then-else时,它可以正常工作.

任何人都可以解释错误,如果有一种方法可以做一个简单的三元运算符?

c# conditional-operator

22
推荐指数
4
解决办法
2999
查看次数

android库项目和活动

我正在开发一个Android SDK库.在这个库中,我已经声明并使用了一些活动.现在我已经尝试将库包含在应用程序中,但我注意到我必须在应用程序中声明所有库活动.这是一件非常糟糕的事情,因为在图书馆中,我已经包含了很多活动,开发人员必须在他自己的应用程序中复制所有活动.这有解决方案吗?

android android-manifest android-library android-activity

22
推荐指数
2
解决办法
1万
查看次数