问题列表 - 第36864页

证明还是反驳 n^2 - n + 2 ?在)

在我的算法分析课程中,我从算法中导出了函数 f(n) = n^2 - n + 2。现在我需要证明或反驳f(n) \xe2\x88\x88 O(n)。显然不是,所以我几个小时以来一直试图反驳这一点,但不知道该怎么做。

\n\n

为了反驳它,我需要证明否定:

\n\n
\xe2\x88\x80M > 0, \xe2\x88\x80N > 0, \xe2\x88\x83n > N s.t. n^2 - n + 1 < M\xc2\xb7n\n
Run Code Online (Sandbox Code Playgroud)\n\n

我尝试过前后工作,但似乎无济于事。我还试图证明,与我的判断相反, f(n) \xe2\x88\x88 O(n):

\n\n
\xe2\x88\x83M > 0, \xe2\x88\x83N > 0 s.t. \xe2\x88\x80n > N, n^2 - n + 1 \xe2\x89\xa5 M\xc2\xb7n\n
Run Code Online (Sandbox Code Playgroud)\n\n

...没有成功。我到底做错了什么?

\n

big-o proof

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

无论缩放如何,获取浏览器窗口位置

如何在不考虑缩放级别的情况下"固定"浏览器窗口的左边缘(包括菜单,边框,标题等)?(这个问题解决了基本问题,但不考虑缩放.).

window.screenLeft或window.screenX在Chrome和Safari上运行正常,但这些使用IE6,IE8和Firefox报告"固定"值.

我认为我可以更可靠地获得屏幕尺寸,也许可以使用它或screen.deviceXDPI来确定缩放系数,但我不知道如何使用它来纠正位置.

(有些人可能想知道我为什么要这样做.这是因为培训网站在用户屏幕的右侧打开了一个浏览器窗口.浏览器使用脚本标签hack与我的应用程序通信.应用程序想要调整自身大小,使其完全适合浏览器窗口的左侧.)

编辑

我应该提到两件事:

  1. 我问的是浏览器缩放,您通常可以从"视图"菜单访问,或者按住Ctrl并转动鼠标滚轮.由于大多数网页都不能很好地响应(例如)默认字体大小的变化而不会弄乱其布局,因此浏览器通过缩放所有测量(包括像素)来实现缩放.为了保持一致,他们还会缩放报告的客户端和窗口大小,鼠标位置等.对我来说麻烦的是我想要真正的(未缩放的)度量.
  2. 我正在寻找一个JavaScript解决方案.

javascript browser zoom cross-browser

17
推荐指数
1
解决办法
1646
查看次数

JS如果在for循环中

我正在尝试将其重写为for循环; 我下面的尝试失败了.有任何想法吗?

jQuery.event.add(window, "load", resizeFrame);
jQuery.event.add(window, "resize", resizeFrame);
function resizeFrame()
    if ($(window).width() < 232){
        $("#grid-content").css( 'width', '232px' );
    }else if ($(window).width() < 458){
        $("#grid-content").css( 'width', '232px' );
    }else if ($(window).width() < 684){
        $("#grid-content").css( 'width', '458px' );
    }else if ($(window).width() < 910){
        $("#grid-content").css( 'width', '684px' );
    }else if ($(window).width() < 1136){
        $("#grid-content").css( 'width', '910px' );
    };
};
Run Code Online (Sandbox Code Playgroud)

结果是div(#grid-content)在3000px左右非常宽,无论窗口大小如何.

jQuery.event.add(window, "load", resizeFrame);
jQuery.event.add(window, "resize", resizeFrame);
function resizeFrame()
    for (var x=232;x<=3000;x=x+226){
        if ($(window).width() < x ){
            $("#grid-content").css( 'width', x +'px' );
        };
    }; …
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

python中的UTF-8兼容压缩

我想在json数据包中包含一个大的压缩字符串,但是有一些困难.

import json,bz2
myString = "A very large string"  
zString = bz2.compress(myString)
json.dumps({ 'compressedData' : zString })
Run Code Online (Sandbox Code Playgroud)

这会导致一个

UnicodeDecodeError: 'utf8' codec can't decode bytes in position 10-13: invalid data
Run Code Online (Sandbox Code Playgroud)

一个明显的解决方案是bz2'整个json结构,但我们假设我正在使用一个执行json编码的blackbox api并且它想要一个dict.

另外,我只是以bz2为例,虽然我注意到与zlib相同的行为,但我并不在乎实际算法是什么.

我可以理解为什么这两个压缩库不会创建utf-8兼容输出,但有没有任何解决方案可以有效地压缩utf-8字符串?这个页面好像是一个金矿http://unicode.org/faq/compression.html但我找不到任何相关的python信息.

python utf-8

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

Python:用mplayer解析流标题

我正在Python中编写一个简单的前端,使用mplayer(在子进程中)播放和录制互联网广播频道(例如来自shoutcast).当用户单击工作站时,将运行以下代码:


url = http://77.111.88.131:8010 # only an example
cmd = "mplayer %s" % url
p = subprocess.Popen(cmd.split(), shell=False)
wait = os.waitpid(p.pid, 1)
return int(p.pid)

这完美地工作,流开始播放它应该.虽然我想以某种方式解析流的标题.看来我需要从mplayer输出中获取标题.这是我在终端中播放流时的输出:

$ mplayer http://77.111.88.131:8010
MPlayer 1.0rc4-4.4.5 (C) 2000-2010 MPlayer Team
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing http://77.111.88.131:8010.
Resolving 77.111.88.131 for AF_INET6...
Couldn't resolve name for AF_INET6: 77.111.88.131
Connecting to server 77.111.88.131[77.111.88.131]: 8010...
Name   : …

python parsing subprocess stream mplayer

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

在Linux上的python中使用'export'进行子进程模块错误?

我正在设置一个程序将我的计算机连接到我们的学校代理,目前有这样的东西:

import subprocess
import sys

username = 'fergus.barker'
password = '*************'
proxy = 'proxy.det.nsw.edu.au:8080'
options = '%s:%s@%s' % (username, password, proxy)

subprocess.Popen('export http_proxy=' + options)
Run Code Online (Sandbox Code Playgroud)

但在跑步时,我得到:

Traceback (most recent call last):
File "school_proxy_settings.py", line 19, in <module>
 subprocess.Popen('export http_proxy=' + options)
File "/usr/lib/python2.6/subprocess.py", line 621, in __init__
 errread, errwrite)
File "/usr/lib/python2.6/subprocess.py", line 1126, in _execute_child
 raise child_exception
OSError: [Errno 2] No such file or directory
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况请大家好吗?

python subprocess

8
推荐指数
2
解决办法
5191
查看次数

为什么AES比DES更安全?

我开始学习加密算法,我理解上面提到的算法是如何工作的.AES的密钥长度是否更长?AES加密的哪些步骤使其不如DES易受攻击?

encryption algorithm cryptography symmetric-key

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

Python Unicode CSV导出(使用Django)

我正在使用Django应用程序将字符串导出到CSV文件.该字符串是通过前端表单提交的消息.但是,当输入中提供了unicode单引号时,我一直收到此错误.

UnicodeEncodeError: 'ascii' codec can't encode character u'\u2019' 
  in position 200: ordinal not in range(128)
Run Code Online (Sandbox Code Playgroud)

我一直在尝试使用下面的代码将unicode转换为ascii,但仍然会出现类似的错误.

UnicodeEncodeError: 'ascii' codec can't encode characters in 
position 0-9: ordinal not in range(128)
Run Code Online (Sandbox Code Playgroud)

我已经筛选了几十个网站并学到了很多关于unicode的知识,但是,我仍然无法将这个unicode转换为ascii.我不在乎算法是否删除了unicode字符.注释的行表示我尝试过的各种选项,但错误仍然存​​在.

import csv
import unicodedata

...

#message = unicode( unicodedata.normalize(
#                            'NFKD',contact.message).encode('ascii','ignore'))
#dmessage = (contact.message).encode('utf-8','ignore')
#dmessage = contact.message.decode("utf-8")
#dmessage = "%s" % dmessage
dmessage = contact.message

csv_writer.writerow([
        dmessage,
])
Run Code Online (Sandbox Code Playgroud)

有没有人有任何关于删除unicode字符的建议我可以将它们导出为CSV?这个看似简单的问题让我头晕目眩.任何帮助深表感谢.谢谢,乔

python csv unicode ascii utf-8

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

C++/CLI:为什么我不能通过引用传递字符串?

为什么Microsoft的C++/CLI不允许我通过引用传递字符串?我收到以下错误:

C3699:'&':不能在类型'System :: String'上使用此间接

string managed-c++ c++-cli reference

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

在ExecutorService的提交和ExecutorService的执行之间进行选择

如果返回的值不是我关注的话,我应该如何在ExecutorService的 提交执行之间进行选择?

如果我同时测试两者,除了返回值之外,我没有看到两者之间有任何差异.

ExecutorService threadExecutor = Executors.newSingleThreadExecutor();
threadExecutor.execute(new Task());
Run Code Online (Sandbox Code Playgroud)
ExecutorService threadExecutor = Executors.newSingleThreadExecutor();
threadExecutor.submit(new Task());
Run Code Online (Sandbox Code Playgroud)

java multithreading executorservice

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