标签: traversal

这很丑陋,必须有更好的方法在jQuery中编写它

$(this).parent().parent().parent().parent().find('[name=reply_to_id]');
Run Code Online (Sandbox Code Playgroud)

多数民众赞成看起来很愚蠢,但这是我能想到的最佳方式.我试过parentsUntil('li'),但都没有工作,我也尝试过parents('li')closest('li').在jQuery中有什么东西相当于:

$(this).firstParentThatMatchesThis('li').find('[name=reply_to_id]');
Run Code Online (Sandbox Code Playgroud)

如果不是我认为生病尝试将其提交给jQuery核心...

这是我的HTML(很长时间我把它放在pastebin上):http://pastebin.com/FypJ9WGe

努力让JSFiddle进入那里......

javascript jquery traversal

6
推荐指数
1
解决办法
125
查看次数

为缓存原因规范化布尔表达式.有没有比真值表更有效的方法?

我当前的项目是一个带有布尔检索功能的高级标签数据库.正在使用类似的布尔表达式查询记录(例如在音乐数据库中):

funky-music and not (live or cover)
Run Code Online (Sandbox Code Playgroud)

这应该会产生音乐数据库中所有时髦的音乐,但不能播放歌曲的现场或封面版本.

当涉及到缓存时,问题是存在等同但结构不同的查询.例如,应用de Morgan的规则,上面的查询可以这样写:

funky-music and not live and not cover
Run Code Online (Sandbox Code Playgroud)

例如,当通过散列查询字符串实现缓存时,它将产生完全相同的记录,但会产生中断缓存.

因此,我的第一个目的是创建查询的真值表,然后可以将其用作缓存键,因为等效表达式构成相同的真值表.不幸的是,这是不切实际的,因为真值表随着输入(标签)的数量呈指数增长,我不想限制一个查询中使用的标签数量.

另一种方法可以是遍历语法树,应用由布尔代数定义的规则来形成(最小的)规范化表示,这似乎也很棘手.

因此,整体问题是:是否有一种实用的方法来实现等效查询的识别,而无需电路最小化或真值表(编辑:或任何其他NP难的算法)?

ne plus ultra将识别已经缓存的子查询,但这不是主要目标.

algorithm caching boolean-logic traversal normalization

6
推荐指数
1
解决办法
1894
查看次数

我应该如何使用/计数jQuery .find()

我使用的是我在这里找到的jQuery插件:http://tutorialzine.com/2011/03/photography-portfolio-shutter-effect/,除了我稍微改了一下.

它仍然以它应该的方式完美地工作,但我添加了一个下一个按钮,用户cna用它来跳到下一个图像,然后它暂停一个循环的间隔,以便不改变下一个图片很快.

但是,我的问题在于一个明显的按钮.我不知道该怎么做,所以我添加了一个变量

var positionInt
Run Code Online (Sandbox Code Playgroud)

这是最后一个列表项的位置,所以我知道我在列表中的位置.

如何将此项与此行创建的li对象一起使用:

var container = $('#container'),
    li = container.find('li');
Run Code Online (Sandbox Code Playgroud)

打开正确的李项目?

另外,如何找到li对象的长度?我试过li.size(),li.count()和li.length,但都没有.

或者是否有一种方法只使用.find()方法在当前可见的项目之前打开li项目?这是怎么回事它原来去前进:

li.filter(':visible:first').hide(); // Hid the only visible li
if(li.filter(':visible').length == 0){
li.show(); // if nothing is visible load a li (Im not really sure what this is pointing at, but it loads the next li)
}
Run Code Online (Sandbox Code Playgroud)

干杯

jquery dom traversal

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

嵌套的Reduce函数/递归/函数编程/树遍历

我一直reduce遇到这样的情况,我最终嵌套很多函数来深入到对象中.拉出逻辑很难,因为在底部我需要访问沿途遍历的各种键.基本上,我正在寻找一种更好的方法来实现以下目标:

import { curry } from 'lodash/fp'
import { fromJS } from 'immutable'

const reduce = curry((fn, acc, it) => it.reduce(fn, acc))

describe('reduceNested', () => {
  const input = fromJS({
    a1: {
      b1: {
        c1: {
          d1: {
            e1: 'one',
            e2: 'two',
            e3: 'three'
          },
          d2: {
            e1: 'one',
            e2: 'two',
            e3: 'three'
          }
        },
        c2: {
          d1: {
            e1: 'one',
            e2: 'two'
          }
        }
      }
    },
    a2: {
      b1: {
        c1: {
          d1: {
            e1: 'one'
          }, …
Run Code Online (Sandbox Code Playgroud)

javascript recursion reduce functional-programming traversal

6
推荐指数
1
解决办法
227
查看次数

使用Java进行NAT遍历

我想连接到计算机,每个计算机都在NAT路由器后面.我读到STUN只适用于NAT路由器后面的一台计算机.真的吗?如果是这样,我该如何解决双NAT问题?

谢谢,托马斯

java traversal nat

5
推荐指数
1
解决办法
3363
查看次数

构造一棵树

如何根据其顺序和前序遍历来构造树?我只是在寻找一种有效的算法.

algorithm tree traversal data-structures

5
推荐指数
1
解决办法
2141
查看次数

矩形/格子乘法

我试图在Java中实现矩形/点阵乘法.对于那些不知道的人,这是一个简短的教程.

我尝试了一些方法,其中我使用单个数组来存储两位数的乘法和sigma-append零.一旦所有数字相乘,我从数组中选择两个元素然后添加sigma值并获取另外两个数字并再次执行相同的操作,直到获取所有数字.

逻辑工作正常,但我无法找到我应该维护的确切零数,因为对于每个不同的数字组(4位*3位),我得到不同的零数.

有人可以帮忙吗?

java traversal matrix matrix-multiplication

5
推荐指数
1
解决办法
1893
查看次数

<HTMLDivElement>没有方法'兄弟姐妹'

我试图改变div元素的兄弟,这是我用过的语句

$('.edit').click(function(){
    this.siblings('.innerInfo').html("success");
});
Run Code Online (Sandbox Code Playgroud)

它不断抛出<HTMLDivElement> has no method 'siblings'异常,我真的无法弄清楚原因.我已经启动了jQuery并且我已经启动了脚本document.ready

谢谢你的帮助!

methods jquery traversal exception

5
推荐指数
1
解决办法
7472
查看次数

如何从LinkedHashMap中的特定键开始迭代?

如果我有数据结构

Stock
{
  String Symbol;
  LinkedHashMap<Date,Double> DateForPrice;  
}
Run Code Online (Sandbox Code Playgroud)

我知道在LinkedHashMap中,我可以获得特定日期的股票价格,而无需遍历整个列表.

但是,如果我想从特定日期开始迭代DateForPrice的LinkedHashMap,有没有办法在不遍历整个列表的情况下执行它?

java traversal linkedhashmap

5
推荐指数
2
解决办法
2201
查看次数

遍历LinkedList的最佳方法 - Java

情况

我明天接受了TripAdvisor的采访,我决定练习创建自己的自定义LinkedList.我试图弄清楚穿越它的最佳方法.

主要问题:我已设法遍历我的链接列表,但我相信有更好的方法.你会如何穿越它?

奖金问题:我的整体课程如何?有什么我应该/不应该添加的吗?它似乎工作正常,但它是最佳的?

奖金问题#2:最后我想知道是否有人对我必须知道的典型面试问题/概念有任何见解?

非常感激.

这是我的课程

// *********************************Node Class*******************************************     
 public class Node<T> {
  Node<T> link;

  T data;

  public Node(T data) {

    this.data = data;
    link = null;

}

public T getData() {
    return data;

}

public Node<T> getLink() {

    return link;

}


public Node<T> setLink(Node<T> N) {

    this.link = N;
    return link;

}

public void setData(T newData) {

    this.data = newData;

}
Run Code Online (Sandbox Code Playgroud)

}

    //****************************************Linked List Class*******************************

   public class LinkedList<T> {

Node<T> head;
T data;


public LinkedList(){
   head = null; …
Run Code Online (Sandbox Code Playgroud)

java traversal linked-list

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