小编gud*_*dok的帖子

使用jQuery拖放防止单击事件

我在页面上有可用jQuery拖动的元素.这些元素是否具有导航到另一页面的点击事件(例如普通链接).

什么是防止点击触发放弃这样的元素同时允许点击它的最佳方法是不是拖放状态?

我有可排序元素的这个问题,但认为有一个普通拖放的解决方案是好的.

我已经为自己解决了这个问题.在那之后我发现Scriptaculous存在相同的解决方案,但也许有人有更好的方法来实现它.

javascript jquery events drag-and-drop jquery-ui-sortable

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

<T>列表<?扩展T> f()一个有用的签名?它/使用它有什么问题吗?

<T> List<? extends T> f()签名是否有用?它/使用它有什么问题吗?

这是一个面试问题.我知道这个:

  1. 它汇编很好
  2. 使用它List<? extends Number> lst = obj.<Number>f(),然后我只能在lst上调用那些在签名中不包含T的List方法(比如isEmpty(),size(),但不能添加(T),删除(T)

这完全回答了这个问题吗?

java generics signature

35
推荐指数
2
解决办法
2210
查看次数

检测单链接链表中循环的开始?

是否有任何方法可以使用不超过两个指针找到链接列表中的循环开始 我不想访问每个节点并标记它并报告第一个节点已经被看到.有没有其他方法可以做到这一点?

loops linked-list find singly-linked-list cycle-detection

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

如何检测和找出程序是死锁?

这是一个面试问题.

如何检测并查明程序是否处于死锁状态?是否有一些工具可用于在Linux/Unix系统上执行此操作?

我的想法:

如果程序没有进展并且其状态正在运行,则它是死锁.但是,其他原因也可能导致这个问题.开源工具是valgrind(halgrind)可以做到的.对?

unix linux multithreading deadlock multiprocessing

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

如何通过MinGW + Code :: Block编译GUI程序的控制台盒

当我使用命令行测试在MinGW + MSys中编译一个简单的Win32 GUI程序并运行它:

$ g ++ main.cpp -o app -std = c ++ 0x

$ ./app

只显示一个对话框.但是把这个程序放到Code :: Block IDE中并编译它,它带有一个带有对话框的黑色控制台盒.在链接选项中添加-mwindows无效.

main.cpp中

#include <windows.h>
int WinMain(HINSTANCE,HINSTANCE,LPSTR,int)
{
    MessageBox(0,"Hello, Windows","MinGW Test Program",MB_OK);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ mingw codeblocks

7
推荐指数
1
解决办法
9463
查看次数

-n 和 -np 之间的 Mpiexec 区别?

我是 MPI 世界的新手,有一个问题让我非常恼火。-n 和 -np 之间的真正区别是什么?

mpi mpiexec

7
推荐指数
1
解决办法
2612
查看次数

复制性能:列表与数组

我正在优化一段代码并发现列表复制(浅层)是瓶颈。

现在我很好奇:为什么列表复制比复制array8 字节慢这么多?在我看来,应该没有区别。在这两种情况下,应该只是memcpy(dst, src, sizeof(int64_t)*len(src))因为指针的长度为 8 个字节。但显然 Python 做的工作比我预期的要多。它与GC有某种关系吗?或者列表是否可能实现为链接列表?

import array
import numpy as np
import timeit


n = 100*1000
lst = [i for i in range(n)]
arr = array.array('q', lst)
nmp = np.array(arr, dtype=np.int64)

assert(arr.itemsize == 8)

n_iter = 100000
print('=== copy() ===')
print('List of int:', timeit.timeit(stmt='lst.copy()', setup='from __main__ import lst', number=n_iter))
print('Array of 8-bytes:', timeit.timeit(stmt='arr.__copy__()', setup='from __main__ import arr', number=n_iter))
print('Numpy array of int64:', timeit.timeit(stmt='nmp.copy()', setup='from __main__ import nmp', number=n_iter))
Run Code Online (Sandbox Code Playgroud)

结果:

import array
import …
Run Code Online (Sandbox Code Playgroud)

python arrays performance numpy copy

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

什么时候更喜欢for循环而不是std :: transform,反之亦然

我想了解何时使用std :: transform更实用,何时使用老式的for循环更好。

这是带for循环的代码,我想将两个向量组合成一个复杂的向量:

    vector<double> vAmplitude = this->amplitudeData(N);
    vector<double> vPhase = this->phaseData(N);
    vector<complex<double>,fftalloc<complex<double> > > vComplex(N);
    for (size_t i = 0; i < N; ++i)
    {
        vComplex[i] = std::polar(vAmplitude[i], vPhase[i]);
    }
Run Code Online (Sandbox Code Playgroud)

这是我的std :: transform代码

    vector<double> vAmplitude = this->amplitudeData(N);
    vector<double> vPhase = this->phaseData(N);
    vector<complex<double>,fftalloc<complex<double> > > vComplex;
    std::transform(
                begin(vPhase), end(vPhase), begin(vAmplitude),
                std::back_inserter(vComplex),
                [](double p, double a) { return std::polar(a, p); });
Run Code Online (Sandbox Code Playgroud)

请注意,vComplex的分配没有大小,因此我想知道何时分配。此外,我不明白为什么,在lambda表达式,p并且a必须扭转对他们的使用。

for-loop stl c++11

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

Python cx_Oracle 客户端库无法加载

我正在尝试连接到 Oracle 数据库,但 python 脚本找不到 cx_Oracle。这是我的脚本:

import cx_Oracle
con = cx_Oracle.connect(‘DBNAME/testitout@www.xx.yy.zz:1521/yeppers’)
print(con.version)
con.close()
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误:

================= RESTART: C:\Python35\Connect_To_Oracle.py =================
Traceback (most recent call last):
  File "C:\Python35\Connect_To_Oracle.py", line 1, in <module>
   import cx_Oracle
cx_Oracle.DatabaseError: DPI-1047: Oracle Client library cannot be loaded: The specified module could not be found. See https://oracle.github.io/odpi/doc/installation.html for help
Run Code Online (Sandbox Code Playgroud)

这是我的操作系统和版本信息:

  • 英特尔至强 CPU E7-4870 @ 2.40GHz
  • Windows Server 2008 R2 企业版
  • 蟒蛇 3.5

这是我为安装 cx_Oracle 所做的:

1. Download Instant Client (Basic Client) from Oracle here : http://www.oracle.com/technetwork/topics/winx64soft-089540.html .
2. Unzip. …
Run Code Online (Sandbox Code Playgroud)

python oracle

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

蟒蛇警告 conda.common.logic:get_sat_solver_cls(278)

(base) C:\Users>conda update --all
Collecting package metadata: done
Solving environment: / WARNING conda.common.logic:get_sat_solver_cls(278): Could not run SAT solver through interface 'pycosat'.
failed
Run Code Online (Sandbox Code Playgroud)

CondaDependencyError :

无法运行求解器。没有可用的功能性 SAT 实现。

现在不能更新了,怎么办?

python numpy python-3.x pandas anaconda

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