Löschen eines Arrays mit definierten Element(en) - Seite 28

 
Nikolai Semko:
Was genau ist das Problem?

Scheiße, ist das Problem richtig gelöst, oder gibt es Nuancen. Es ist nicht nur die Zeit, die den Ton angibt.

 
Алексей Тарабанов:

Ich weiß nicht, wie ich Ihnen auf Chinesisch antworten soll.

Kümmern Sie sich lieber um Ihre Enkelkinder...
 
Алексей Тарабанов:

Scheiße, ist das Problem richtig gelöst, oder gibt es Nuancen. Es ist nicht nur die Zeit, die den Ton angibt.

Natürlich gibt es eine Menge Nuancen. Es hat keinen Sinn, dieses Problem gründlich zu lösen, da es sich um ein rein akademisches Problem handelt und noch keine praktische Anwendung erkennbar ist.
 
Nikolai Semko:
Kümmern Sie sich lieber um Ihre Enkelkinder...

Ich danke Ihnen für Ihre Antwort, nicht Sie.

 
Алексей Тарабанов:

Ich danke Ihnen für Ihre Antwort, nicht Sie.

Wohlgemerkt, ich habe nicht damit angefangen. Ich bin nur defensiv.)
Sie sollten mit dem Bumerang vorsichtig sein.
 
Nikolai Semko:
Natürlich gibt es eine Menge Nuancen. Es hat keinen Sinn, dieses Problem gründlich zu lösen, da es sich um ein rein akademisches Problem handelt und es noch keine praktische Anwendung gibt.

Es handelt sich um eine Aufgabe, bei der es sinnvoll ist, sie gründlich und umfassend anzugehen.

 
Алексей Тарабанов:

Es handelt sich um eine Aufgabe, bei der es sinnvoll ist, sie gründlich und umfassend anzugehen.

Was ist also der Grund dafür? Bieten Sie Ihre eigene gründliche und umfassende Lösung an. Ich bin noch nicht so weit gereift. Ich habe alles aufgeschrieben, was ich konnte.
 

die Berechnung des Betrags auf CRC32 geändert)

Циклический избыточный код — Википедия
  • ru.wikipedia.org
Понятие циклические коды достаточно широкое[3]. В англоязычной литературе CRC понимается двояко в зависимости от контекста: Cyclic Redundancy Code или Cyclic Redundancy Check[4]. Под первым понятием подразумевают математический феномен циклических кодов, под вторым — конкретное применение этого феномена как хэш-функции. Первые попытки создания...
Dateien:
 

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Löschen eines Arrays mit einem oder mehreren Elementen

nicholi shen, 2018.11.17 03:58

Sergey Dzyublik:

Ich würdeeine HashSet-Datenstruktur für Werte verwenden.
Die Komplexität wäre: O(n) + O(m)

Für die vorgeschlagene binäre Suche wäre die Komplexität: O(n log(m))

1. Welche Bibliothek verwenden Sie für Hash-Sets?
2. die, die ich für MQL gesehen habe, sind langsamer als binäre Suche ...


1. Ich habe keine Bibliothek für HashSet verwendet.
Das ist nur ein theoretischer Ansatz, um das Problem zu lösen.

2.MQL hatte viele Fragen zur Umsetzung. Aber ihre Aufgabe ist die Universalität, nicht die maximale Geschwindigkeit für primitive Typen.


Je nach den Eingangsparametern des Problems ändern sich die Werte der Konstanten für die Komplexität der Algorithmen.
Folglich kann ein in Bezug auf die Komplexität langsamerer Algorithmus unter bestimmten Eingabebedingungen eine höhere Geschwindigkeit erreichen als ein in Bezug auf die Komplexität schnellerer Algorithmus.

 
Nikolai Semko:

Das Problem mit einer Reihe gelöschter Werte erwies sich als interessanter. Hier gibt es noch viel Raum für Kreativität.
Ich habe mir folgende Option ausgedacht.

Im Grunde genommen verwenden Sie eine statische HashSet-Datenstruktur mit einem anfänglichen Array von Daten, um Kollisionen zu lösen.
Aber die Umsetzung ist nur ein Wimpernschlag...

Anstatt eine Funktion ("FindValueInSortArray") mit 100-500 unnötigen Parametern aufzurufen, wird in der Regel eine Klasse verwendet, in der diese Parameter als Felder der Klasse fungieren (Gewinn bei der Übergabe von Parametern, wenn der Compiler nicht daran gedacht hat, sie implizit inline zu machen).
Wenn es notwendig ist, ein Paar von Arrays derselben Größe und mit demselben Verwendungszweck zu verwenden ( int p1[]; int p2[];), wird in der Regel ein Strukturarray verwendet (Vorteil des Indexzugriffs, geringere Gefahr von Cache-Fehlern).
Grund der Beschwerde: