Skip to content

agiil/Palindromist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JavaScript Style Guide

Algoritmid ja töövahendid samatekstide kirjutajatele

Praegu on repos üks algoritm - ladumisalgoritm leiab etteantud sõnastiku ja algsõna abil kõik algsõnast lähtuvad palindroomsed tekstid (samatekstid).

Kasutusnäide. Sisend:

var sonastik = [
  'aa', 'ta', 'va', 'ava', 'tava', 'vaat', 'taat',
  'vaata', 'avata', 'vaatav', 'avatav', 'tavata',
  'vaatava', 'avatava', 'vaatavat', 'avatavat'];
ladumisalgoritm('ava', sonastik, false);

Ladumisalgoritm väljastab:

Sõnastik: aa ta va ava tava vaat taat vaata avata vaatav avatav tavata vaatava avatava vaatavat avatavat 
ava ... (ava) 
Leitud samatekstid: 
ava ta avata avatavat ... tavata vaatav aa tava 
ava ta avata va ... avatav aa tava 
ava ta avata vaatavat ... tavata avatav aa tava 
ava ta avatava ... avatav aa tava 
ava tavata avatava ... avata vaatava tava 
ava tavata va ... avatava tava 
ava tavata vaat ... ta avatava tava 
ava tavata vaata va ... avata avatava tava 
ava tavata vaata vaat ... ta avata avatava tava 
ava tavata vaatava ... avata avatava tava 
ava tava ... avatava 

Piirangud. 1) genereerib ainult tekste, milles iga sõna esineb üks kord; 2) genereeritava teksti pikkus kuni 8 sõna (sätitav).

Koodikommentaarid. Kasutab JSDOC vormingut, API kirjeldus genereeritakse jsdoc-to-markdown abil:

npm install -g jsdoc-to-markdown

jsdoc2md Ladumisalgoritm.js >> docs/Koodikirjeldus.md

Koodistiil. Kasutab koodikorrastajat Standard JS:

npm install standard --global

standard --fix (Javascripti-failide kaustas)

Testimine. Testifunktsiooni tunnuseks on nimekuju <testitava f-ni nimi>TESTID. Testifunktsioonid on eraldi failis.

Kõige olulisemad andmestruktuurid. seis on koostatava teksti siseesitus. seis kuju on järgmine: [[o1, p1, o2], [o3, p2, o4]], kus

  • massiivi kaks elementi esitavad samateksti pooli; ühe poole tekst on teise poole pahupiditekst
  • p1, p2 - on paigalolevad tekstiosad
  • o1, o2, o3, o4 - on nn "otsad" - tekstiosad, mille tähendus pole veel välja selgitatud selgitatud. Otsad võivad olla laiendatavad sõnadeks. Laiendamisega võivad tekkida uued otsad jne.

Näiteks [['', 'vaata', ''], ['at', '', 'aav']] esitab koostatava samateksti seisu, kus sõna vaata on ümber pööratud ja jagatud kaheks "otsaks" - at ja aav. Seisu saab laiendada, otsides sõnastikust sobivaid sõnu at ja aav laiendamiseks täissõnadeks.

About

Algoritmid ja töövahendid samatekstide kirjutajatele | Algorithms and Tools for Palindrome Writers

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors