Какова будет сложность поиска имени в списке знакомых

JSON - это действительный объект JavaScript, в то время как вы сами печатаете сам JavaScript, вам не нужно дополнительно кодировать / расшифровывать JSON после его преобразования в JSON.

<script type="text/javascript">
    var addresses = @Html.Raw(Model.Addresses);
</script>

После этого будут напечатаны, и это действительно выражение JavaScript.

<script type="text/javascript">
    var addresses = [["123 Street St.","City","CA","12345"],["456 Street St.","City","UT","12345"],["789 Street St.","City","OR","12345"]];
</script>
2
задан Sahib Khan 17 January 2019 в 02:26
поделиться

1 ответ

Вы можете выполнять такие операции за линейное (O (n)) время. Чтобы сделать это, вы должны сохранить свой график в виде списка смежности

. Вы можете либо преобразовать дерево (используя обход DFS) один раз, либо просто сохранить график изначально как список, а не как дерево. .

Вы можете легко найти человека в списке смежности за линейное время (или даже постоянное время O (1), если вы будете использовать hashMap / hashTable / dictionary), а также его связи.

В противном случае вам придется выполнить обход DFS и сохранить список (набор) посещенных узлов, чтобы избежать циклов. В зависимости от того, какую структуру данных вы будете использовать для посещенного списка, вы можете иметь различные сложности - от O (n) до O (n ^ 2). Но во всех случаях вам потребуется 2n памяти В КАЖДОМ ПУТЕШЕСТВИИ (например, если у вас есть несколько поисков, которые будут выполняться параллельно).

0
ответ дан Azee 17 January 2019 в 02:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: