作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我应该在此练习中使用单链接列表和具有通用类型的某个元素。返回该元素出现的每个位置的int数组。
我的代码如下所示:
public int[] ocurrences(T elem)
{
Node<T> cur = first;
int[] ocurrence = new int[size];
for(int i = 0; i < size -1; i++)
{
cur = cur.getNext();
T element = cur.getValue();
if(element.equals(elem))
{
ocurrence[i] = i;
}
}
return ocurrence;
}
最佳答案
您需要为ocurrence[]
使用单独的计数器,例如在下面给出的代码中,我为其使用了计数器变量c
:
public int[] ocurrences(T elem) {
Node<T> cur = first;
int[] ocurrence = new int[size];
int c = 0;
for (int i = 0; i < size - 1; i++) {
cur = cur.getNext();
T element = cur.getValue();
if (element.equals(elem)) {
ocurrence[c++] = i;
}
}
ocurrence = Arrays.copyOf(ocurrence, c);
return ocurrence;
}
c
索引的元素。为此,我在函数返回
ocurrence = Arrays.copyOf(ocurrence, c)
之前使用了
ocurrence[]
。
关于java - 如何获得一个int数组,其中某个元素在单链列表中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61960266/
你好,我编写了一个链表类的成员函数来复制偶数节点并删除奇数节点。 在我尝试删除仅包含 1 个元素的列表的头部之前,我的测试用例中的一切都是成功的。 我的测试程序指出,无论出于何种原因,列表的长度都大于
我是一名优秀的程序员,十分优秀!