小编zca*_*fg2的帖子

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

我已经解决了问题,但无法提出通过所有测试用例的最有效问题.它在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
查看次数

为什么 anaconda 占用太多空间(&gt; 30GB)?

在此处输入图片说明

我跑了

conda clean -all 
Run Code Online (Sandbox Code Playgroud)

这删除了大约 10GB,我仍然有 30GB 的使用量。

我检查了 anaconda 目录,发现 env 文件夹占用了大约 20gb,packages 文件夹占用了另外 10gb。

为什么 anaconda 占用太多空间?每个 env 大约需要 3gb,我有 7 个 env。

jupyter
matplotlib
image
keras_tqdm
opencv
msgpack-rpc-python
pandas
numpy
scipy
tensorflow-gpu
keras
h5py
Run Code Online (Sandbox Code Playgroud)

这是一种环境要求,占用大约 3GB。

提前谢谢了。

anaconda

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

“三和”问题空间复杂度——为什么是O(n)?

Leetcode - 三和

https://leetcode.com/problems/3sum/

def threeNumberSum(array, targetSum):
    array = sorted(array)
    results = []
    for idx, elem in enumerate(array):
        i = idx + 1
        j = len(array) - 1
        target = targetSum - elem
        while i < j:
            currentSum = array[i] + array[j]
            if currentSum == target:
                result = [array[i], array[j], array[idx]]
                results.append(sorted(result))
                i += 1 
                j -= 1 
            elif currentSum < target:
                i += 1
            else:
                j -= 1

    return results  
Run Code Online (Sandbox Code Playgroud)

所以时间是 O(n^2),我对此很满意,但空间是 O(n),根据 Algoexpert.io,我不确定为什么。他的解释是:

“我们最终可能会存储数组中的每个数字,如果在某个三元组中使用每个数字,我们将存储很多数字,并且它将受到 O(n) 空间的限制。即使使用了一些数字多次,其界限为 O(n)"

但我现在还无法理解他的解释。如果提供的数组具有(几乎)所有唯一的三元组排列,总和等于该目标数字,那么空间复杂度不是会变成 …

python algorithm complexity-theory space-complexity

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

与 IntelliJ 合并提交

我想知道是否可以将提交与 IntelliJ 合并,现在当我合并时,然后推送它在 github 页面中显示为单个。

在此处输入图片说明

我想做合并提交,以便它与我的讲座保持一致。我的讲师教我们在使用 Eclipse 时使用合并提交。

git intellij-idea

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

(Azure)Az批处理池:错误:'NoneType'对象没有属性'startswith'

无法创建批处理池:

> az login 
> az account set --subscription $myid
> az batch account set --resource-group $resourceGroupName --name $batchAccountName
> az batch pool create --json-file pool.json

usage: az batch pool create [-h] [--verbose] [--debug]
                            [--output {json,jsonc,table,tsv,yaml,none}]
                            [--query JMESPATH] [--id ID] [--vm-size VM_SIZE]
                            [--os-family {2,3,4,5}] [--os-version OS_VERSION]
                            [--node-agent-sku-id NODE_AGENT_SKU_ID]
                            [--resize-timeout RESIZE_TIMEOUT]
                            [--target-dedicated-nodes TARGET_DEDICATED_NODES]
                            [--target-low-priority-nodes TARGET_LOW_PRIORITY_NODES]
                            [--auto-scale-formula AUTO_SCALE_FORMULA]
                            [--enable-inter-node-communication]
                            [--start-task-command-line START_TASK_COMMAND_LINE]
                            [--start-task-resource-files START_TASK_RESOURCE_FILES [START_TASK_RESOURCE_FILES ...]]
                            [--start-task-wait-for-success]
                            [--certificate-references CERTIFICATE_REFERENCES [CERTIFICATE_REFERENCES ...]]
                            [--application-package-references APPLICATION_PACKAGE_REFERENCES [APPLICATION_PACKAGE_REFERENCES ...]]
                            [--application-licenses APPLICATION_LICENSES [APPLICATION_LICENSES ...]]
                            [--max-tasks-per-node MAX_TASKS_PER_NODE]
                            [--metadata METADATA …
Run Code Online (Sandbox Code Playgroud)

azure azure-powershell

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