小编Ris*_*hav的帖子

41
推荐指数
2
解决办法
2997
查看次数

面试问题:查询 - 哪些句子包含短语的所有单词

我已经解决了问题,但无法提出通过所有测试用例的最有效问题.它在5个测试用例中超时.

确定句子包含短语
0的所有单词:克里斯和詹妮弗今天早上打架
1:克里斯去度假
2:詹妮弗在监狱里

查询短语是
0:克里斯詹妮弗
1:詹妮弗
2:监狱

目标是为每个查询找到匹配句子的索引,或者如果不存在匹配句子则为-1.单词顺序无关紧要.

输出:
0
0 2
2

即,第一个查询在句子0中具有匹配的单词,在句子0和1中具有第二个查询,依此类推.

约束

  • n:句子数量
  • m:赞美的数量
  • n,m <10 ^ 4
  • 任何句子或查询短语中的单词数量在[1-10]范围内
  • 每个单词最多有11个字符
  • 超过10个句子中没有单词出现
  • 每个单词仅由大写和小写字母组成
  • 每个单词必须完全匹配 - 即喜欢和喜欢不匹配.

输入格式:

3
克里斯和詹妮弗今天早上打架
克里斯去度假
jennifer在监狱
3
克里斯詹妮弗
詹妮弗
监狱

每个3代表句子或查询的数量.


以下是我试过的......

我的第一个解决方案:

  1. 根据每个句子制作HashMap
  2. 对于短语中的每个分词:
    2-1.检查语句hashmap
    2-2中是否存在所有单词.如果存储索引
    2-3.如果所有句子都没有匹配的句子,则存储-1.
  3. 打印结果

令p =句子中最大字数
让k =查询中最大字数
Big O是O(npk)

public static void textQueries(List<String> sentences, List<String> queries) {
    List<Map<String, Integer>> sentenceMaps = createMaps(sentences);
    String results = queryMatcher(sentenceMaps, queries);
    System.out.println(results);
}


private static String …
Run Code Online (Sandbox Code Playgroud)

java string algorithm

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

在Java中使用try-catch时的变量范围问题

我有一个PDF实现接口的类fileReader.

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

public class PDF implements fileReader {
    @Override
    public byte[] readFile(File pdfDoc) {
        if (!pdfDoc.exists()) {
            System.out.println("Could not find" + pdfDoc.getName() + " on the specified path");
            return null;
        }
        FileInputStream fin = null;
        try {
            fin = new FileInputStream(pdfDoc);
        } catch (FileNotFoundException e) {
            System.out.println("");
            e.printStackTrace();
        }
        byte fileContent[] = new byte[(int) pdfDoc.length()];
        try {
            fin.read(fileContent);
        } catch (IOException e) {
            e.printStackTrace();
        }
        return fileContent;
    }
} …
Run Code Online (Sandbox Code Playgroud)

java scope

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

如何使用 Haddock 查看 Haskell 的文档?

例如,我将如何像在hackage一样查看 Data.List.group 的文档?

如果我尝试使用 Haddock 作为:

$ haddock Data.List                                   
<no location info>: error: module ‘Data.List’ is a package module
$ haddock Data.List.group                            
target ‘Data.List.group’ is not a module name or a source file
Run Code Online (Sandbox Code Playgroud)

另一方面,我知道这些 html 文档存在于我的计算机/usr/local/share/doc目录下。

还是我弄错了,这不是黑线鳕所做的?

haskell haddock

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

无法将 ES6 代理与 window.document 对象一起使用

我已经编写了一些代码,这些代码应该document.cookie在发生这种情况时监视修改并打印到控制台。

var handler = {
        set: function(target, property, value) {
            console.log("in proxy");
            if (property === "cookie") {
                console.log(`cookie is being modified with val ${value}`);
            }
            return Reflect.set(...arguments);
        }
    }
window.document = new Proxy(document, handler);
Run Code Online (Sandbox Code Playgroud)

但是,似乎文档对象实际上并没有改变。(它仍然是未经代理的版本)。因此,代理永远不会捕获对document.cookie

如果相反,我想在 上设置代理document.cookie,那似乎也是不可能的,因为无法捕获分配操作,而只能属性 get/set。

平台:Chrome 67.0.3396.79

javascript es6-proxy

5
推荐指数
0
解决办法
683
查看次数

在 Python 命令行上定义函数时出现语法错误

我正在尝试在 Python REPL 上定义一个函数。每次尝试运行以下代码时,都会出现语法错误。

代码:

def hello():
    print ("Hello!")
hello()
Run Code Online (Sandbox Code Playgroud)

错误:

C:\Users\~\Desktop>python
Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 16:07:46) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> def hello():
...     print ("Hello!")
... hello()
  File "<stdin>", line 3
    hello()
        ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

错误

我在 stackoverflow 上遇到的一个可能的解释是这篇文章Python Error : File "<stdin>",它说我无法从 Python 解释器运行脚本。如果这是真的,为什么会这样?即,如果我能够在 cmd 窗口中运行 >>>2+2,为什么我不能运行“def”函数?希望在这一点上寻求澄清 - 谢谢!

编辑:将错误放在文本中,而不仅仅是图片。

python cmd syntax-error python-3.x windows-10

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

如何使函数返回什么?

我有一个函数调用crawl,它将返回一个网站的链接.然后我做了类似的事情:

found.append(crawl()) (找到了一个清单)

只要爬网返回有效链接,这样就可以正常工作,但有时它不会返回任何内容.因此,将值None添加到列表中.

所以我的问题是,是否可以从中返回一些crawl不会在列表中添加任何内容的内容?

python

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

找到最长尾随子字符串的长度

我需要提取在给定字符串末尾结束的最长子字符串的长度,并且还包含完全相同的字符.

例如,假设"aaabbbb"所需子将"bbbb"length = 4

虽然我可以想到使用while/ forloop 做到这一点的很多方法,但我想知道是否有更优雅的方法来做到这一点.有没有用于此目的的模块?我不想使用for循环来查找此子字符串.可能吗?

python python-2.7

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

通过 BeautifulSoup 从网页下载图像数据 URI

我需要使用 Python 从网站检索图像。但是,该图像不是链接文件的形式,而是 GIF 数据 URI。如何下载该文件并将其存储在 .gif 文件中?

python beautifulsoup python-2.7

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