小编Geo*_*sen的帖子

Java Queue的最佳实现?

我正在使用递归图像处理算法(在Java中),该算法以递归方式从中心点向外遍历图像的像素.

不幸的是,这会导致堆栈溢出.所以我决定切换到基于队列的算法.

现在,这一切都很好而且花花公子 - 但考虑到它的队列将在很短的时间内分析成千上万的像素,同时不断地弹出和推动,而不保持可预测的状态(它可以在长度100之间的任何地方,和20000); 队列实现需要具有显着快速的弹出和推送能力.

链表似乎很有吸引力,因为它能够在不重新排列列表中的任何其他内容的情况下将元素推送到自身,但为了使其足够快,它需要轻松访问其头部和尾部(或者第二个 - -last节点,如果它没有双重链接).遗憾的是,虽然我找不到任何与Java中链接列表的底层实现相关的信息,但很难说链接列表是否真的要走了......

这让我想到了我的问题.对于我打算做什么,Java中Queue接口的最佳实现是什么?(我不想编辑甚至访问队列的头部和尾部以外的任何东西 - 我不希望做任何类型的重新排列或任何事情.另一方面,我打算做很多推动和弹出,队列将大大改变大小,因此预分配将是低效的)

java queue

47
推荐指数
4
解决办法
8万
查看次数

对于属性中使用的变量,是否有任何C#命名约定?

比方说,我们有一个变量,我们想要命名 Fubar

让我们说这Fubar是一个String!

这意味着,我们将Fubar定义为:

public string Fubar;
Run Code Online (Sandbox Code Playgroud)

现在,假设我们想要Fubar一个getter和setter(换句话说,成为一个C#属性)!

private string Fubar;
public string Fubar_gs
{
    get
    {
        //Some fancy logic
        return Fubar;
    }
    set
    {
        //Some more fancy logic
        Fubar = value;
    }
}
Run Code Online (Sandbox Code Playgroud)

好极了!这一切都很好,花花公子,除了我想要将PROPERTY命名为Fubar,而不是原始变量怎么办?

很明显,我只想重命名这两个变量.但问题是,原始变量的最佳名称是什么?

这种情况是否有命名惯例?

c# properties

45
推荐指数
5
解决办法
4万
查看次数

CSS设置li缩进

谷歌搜索和搜索堆栈溢出并没有返回任何我能识别的结果,所以请原谅我,如果之前已经问过...

我有下拉主菜单,它以列表为基础.问题是,列表非常宽,并且在扩展时它们不会缩进得足够远.所以,这是我的问题!如何通过CSS使列表中的缩进量更大?

html css

40
推荐指数
4
解决办法
11万
查看次数

Java将String CompareTo作为比较器对象

我想通过String.CompareTo比较器对一个静态字符串数组进行排序和二进制搜索.

问题是排序和二进制搜索都要求传入Comparator对象 - 那么如何传入内置字符串比较器?

java string object comparator

34
推荐指数
8
解决办法
12万
查看次数

string.c_str()需要解除分配吗?

我的代码经常将C++字符串转换为CStrings,我想知道原始字符串是否在堆栈上分配,CString也会在堆栈上分配吗?例如:

string s = "Hello world";
char* s2 = s.c_str();
Run Code Online (Sandbox Code Playgroud)

s2在堆栈上还是在堆中分配?换句话说,我需要删除s2吗?

相反,如果我有这个代码:

string s = new string("Hello, mr. heap...");
char* s2 = s.c_str();
Run Code Online (Sandbox Code Playgroud)

请问s2现在在堆中,因为它的起源是在堆上?

为了澄清,当我询问是否s2在堆上时,我知道指针在堆栈上.我问的是它指向堆或堆栈的内容.

c++ string heap stack memory-management

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

C#浅拷贝词典?

我需要在c#中浅层复制字典.

例如:

Dictionary<int,int> flags = new Dictionary<int,int>();
flags[1] = 2;
flags[2] = 3;
flags[0] = 9001;
Dictionary<int,int> flagsn = flags.MemberwiseClone();
Run Code Online (Sandbox Code Playgroud)

不幸的是,它返回错误:"错误CS1540:无法访问受保护的成员object.MemberwiseClone()' via a qualifier of typeSystem.Collections.Generic.Dictionary'.限定符必须是"PointFlagger"类型或从中派生出来的"

不完全确定这意味着什么...有没有另一种方法来浅层复制字典/修复上面的代码?

c# dictionary shallow-copy

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

CSS Table-Like对齐没有表格?(CSS RelativeLayout)

无论我在互联网上的哪个地方,我都不断地打败我,我不应该使用桌子.可悲的是,我是少数几个顽固到可以使用它们的程序员之一 - 我坦率地发现CSS的对齐和布局功能对我来说不够强大,冷火鸡,停止使用表格.由于我的个人程序员特性被搁置,我想尝试用CSS系统攻击我的一个主要不满:

假设我想要这样的布局:

+---+---+
| A | B |
+---+---+
| C | D |
+---+---+
Run Code Online (Sandbox Code Playgroud)

在上面的例子中,我希望A和C的宽度相同,并且宽度BD保持不变.

我也想的高度A,并B保持锁定在一起,和我想的高度C和d留在彼此相同.

为了澄清,如果列中的任何元素变宽,我希望该列中的所有元素都变得更宽.如果一行中的任何元素变得更高,我再次希望同一行中的所有元素也变得更宽.

我刚刚描述的是我们的老朋友桌子的确切功能.在我看来,表格对于这些布局非常有用!如果我尝试类似于使用CSS布局的东西,我可能得到这样的东西:

+-------+---+
|   A   | B |
+---*---*---+
| C |   D   |
+---+-------+
Run Code Online (Sandbox Code Playgroud)

这非常不是我正在寻找的那种布局.(A并且C制作锯齿状的柱子,而不是像我希望的那样完美,平滑的柱子)

简单地说我的问题,我真的可以使用一种方法,使用CSS布局(而不是预定义的宽度或高度)将一个CSS框的边缘的位置与不同CSS框的边缘的位置对齐.如果CSS支持这一个简单的功能,我可以立即放下表格,并创建甚至超出表格功能的布局!这种电源的良好但无用的例子是在桌子的相对侧上的两个断开的盒子,动态地共享彼此完全相同的高度和垂直位置.

但不幸的是,在我的互联网搜索中,到目前为止我发现的最先进的对齐是中心,左和右对齐.所有与OTHER元素无关的对齐类型,使它们无用.

我想要的只是一种将HTML元素与其他HTML元素对齐而无需使用表格的方法!

编辑

在为这个问题挑选标签时,我遇到的描述几乎总结了一切:

Relativelayout:一种布局,其中可以相对于彼此或与父母相关地描述孩子的位置.

有一个CSS RelativeLayout吗?或者,每当我想要这样做时,我都会使用表格?

我将接受最接近我想要的功能的答案,而不使用预定的宽度或高度(如果没有其他人提供更好的东西,包括答案"没有那样的存在").

css alignment

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

CSS类重复增加特异性

根据CSS文档:http: //www.w3.org/TR/CSS21/cascade.html#specificity

特性由(除其他外)定义选择器中的属性和伪类的数量来定义.

所以,我的问题是,是否可以通过一遍又一遍地重复相同的类名来提高特异性?

例如:

.qtxt.qtxt.qtxt.qtxt.qtxt
{
}
Run Code Online (Sandbox Code Playgroud)

具有更高的特异性

.qtxt.lalgn
{
}
Run Code Online (Sandbox Code Playgroud)

要么

.lalgn .qtxt//(space added to create child selector)
{
}
Run Code Online (Sandbox Code Playgroud)

css css-selectors css-specificity

14
推荐指数
1
解决办法
3317
查看次数

C#迭代字典按值排序

有没有办法按排序顺序迭代一个字典,按VALUE而不是键排序?我确实阅读了"SortedDictionary"对象,但遗憾的是,它是按键排序的.一个解决方案是让我用我的值翻转我的所有键,并将它们放入SortedDictionary(因为它们都是整数) - 但是,我不完全确定如何使用那个.

c# dictionary loops sorted

9
推荐指数
1
解决办法
7274
查看次数

Objective-C静态内联NSString数组

嗨:)我正在尝试创建NSStrings的静态C阵列.

这是我试过的:

static NSString** polygonNames = {@"Radical Isotope", @"Point", @"Line", @"Triangle", @"Square", @"Pentagon", @"Hextagon", @"Heptagon", @"Octagon", @"Nonagon", @"Decagon", @"Hendecagon", @"Dodecagon",  @"Tridecagon",  @"Tetradecagon",  @"Pentadecagon",  @"Hexadecagon",  @"Heptadecagon", @"Octadecagon", @"Enneadecagon"};
Run Code Online (Sandbox Code Playgroud)

没有编译器错误,但我收到41个警告,所有这些都是以下三个中的一个:

"warning: initialization from incompatible pointer type"
"warning: excess elements in scalar initializer"
"warning: (near initialization for 'polygonNames')"
Run Code Online (Sandbox Code Playgroud)

这让我相信当我使用这个课程时,我会遇到大量的信号或其他一些内存访问错误......

初始化NSStrings静态数组的正确方法是什么(最好是内联,我想使用C数组,而不是NSArrays)?

inline objective-c init static-array

9
推荐指数
1
解决办法
7876
查看次数