|
|
Alle Teilmengen aus String Menge erzeugen |
|
basmok |

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 26.01.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.01.2014, 21:02
Titel: Alle Teilmengen aus String Menge erzeugen
|
 |
Hallo liebe Leute,
bin hier schon oft auf tolle Antworten gestoßen und hoffe ihr könnt mir vielleicht auch bei meinem Problem einen geschickten Tipp geben.
Ich möchte gerne von einer String Menge alle möglichen Teilmengen bilden.
Bsp. Auto Hund Katze
dann wäre dies:
Auto
Hund
Katze
Auto Hund
Auto Katze
Hund Katze
Auto Hund Katze
Leider habe ich als einziges habe ich die Funktion nchoosek ausfindig machen können, diese ist aber leider nur für Zahlen und auf statisch n Ausgabelemente fixiert.
Hättet ihr da eine Herangehensweiße für mich?
Danke schon mal im Vorraus!
|
|
|
|
|
Mmmartina |

Forum-Meister
|
 |
Beiträge: 745
|
 |
|
 |
Anmeldedatum: 30.10.12
|
 |
|
 |
Wohnort: hier
|
 |
|
 |
Version: R2020a
|
 |
|
|
 |
|
Verfasst am: 27.01.2014, 10:16
Titel:
|
 |
Mit Teilmengen meist du alle Kombinationen?
Den String hast du als "Auto Hund Katze" vorliegen? D.h. du musst ihn zuerst auseinandernehmen, also die einzelnen Elemente rausfinden? -> strfind/strcmp um die Leerzeichen zu finden und die Stringsteile zu vereinzeln.
Das eine Maltabfunktion nur für Zahlen funktioniert ist aber doch unerheblich - du weißt, wie viele Teilstrings N du hast -> Vektor [1:N]. Damit arbeitest du und schließt einen Schritt an, in welchen Zahl 1 der erste Strin, Zahl 2 der zweite String,... zugewiesen wird.
Da es endlich viele Teileinträge sind, sollte aber selbst ein "händisches" erstellen der Kombinationen über Schleifen kein Problem sein. (geschachtelte Schleife)
_________________
LG
Martina
"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
|
|
|
Nras |

Forum-Meister
|
 |
Beiträge: 608
|
 |
|
 |
Anmeldedatum: 21.02.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.12.0.635 (R2011a)
|
 |
|
|
 |
|
Verfasst am: 27.01.2014, 10:32
Titel:
|
 |
Hallo,
du kannst es genau so machen, wie Martina es gesagt hat. Für die Schleife gibt es auch eine schicke Lösung:
Nun sind in C die Indices der vorher getrennten Wörter enthalten, es sollte leicht sein, das wieder in die ursprünglichen Wörter zu überführen.
Übrigens: dieser Beitrag hier http://www.gomatlab.de/potenzmenge-.....31507,highlight,nras.html hätte dir helfen können.
Viele Grüße,
Nras.
|
|
|
jurtsche |

Forum-Century
|
 |
Beiträge: 123
|
 |
|
 |
Anmeldedatum: 26.03.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.01.2014, 13:18
Titel:
|
 |
oder:
Zitat: |
x =
[] [] [] 'Miau'
[] [] 'Katze' []
[] [] 'Katze' 'Miau'
[] 'Hund' [] []
[] 'Hund' [] 'Miau'
[] 'Hund' 'Katze' []
[] 'Hund' 'Katze' 'Miau'
'Auto' [] [] []
'Auto' [] [] 'Miau'
'Auto' [] 'Katze' []
'Auto' [] 'Katze' 'Miau'
'Auto' 'Hund' [] []
'Auto' 'Hund' [] 'Miau'
'Auto' 'Hund' 'Katze' []
'Auto' 'Hund' 'Katze' 'Miau' |
|
|
|
basmok |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 26.01.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.01.2014, 13:34
Titel:
|
 |
Geschickt! Mit Schleife und Indexen, stimmt!
Zum Glück habe ich mit den lookup-tables und hashtables noch gewartet - Schon so ein Gefühl gehabt, dass es wohl hoffentlich auch einfacher gehen könnte
Den Link mit den Potenzmengen hatte ich nicht gefunden, wusste nicht ob diese Art der Kombinatorik einen eigenen Begriff hat oder wo es üblicherweise benutzt wird.
Vielen Dank!
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|