» »

program, ki ti najde vse kombinacije črk oz. številk, ki mu jih podaš

program, ki ti najde vse kombinacije črk oz. številk, ki mu jih podaš

1
2
»

s6c-gEL ::

Meni na win 7 dela bp.





Skopiraj slovar ter Iskalnik.exe v skupno mapo.

Zgodovina sprememb…

  • spremenilo: s6c-gEL ()

bauci ::

Zadeva deluje. Bom razložil bolj počasi :).
Najprej iz povezave zgoraj skopiraš datoteko z besedami iz slovenskega slovarja in to v isti direktorij kjer imaš exe. program. Zaženeš program in v spodnje okno (kjer prej izbrišeš napisan tekst) vpišeš ime slovarja (original je file2.txt) in klikneš tipko Naloži. Počakaš par sekund in pod zgornji gumbom Išče dobiš napisano koliko besed se je naložilo (meni 1.165.852). Nato vpišeš besedo v okno nad gumbom Išči in pritisneš gumb Išči. V velikem oknu se izpišejo besede/premetanke iz slovenskega slovarja.

vilonja ::

Na katerem linku si pa dobil slovar, ker je vec linkov

s6c-gEL ::

Moj post od davi.

vilonja ::

Oj dela mi problem je bil ker programa nisem zagnal kot skrbnik

a ta link ki si ga naredil je začasni

Zgodovina sprememb…

  • spremenilo: vilonja ()

BorutO ::

A lahko kdo to posodobi? :)

7982884e ::

uf, kako ti je pa tole uspelo odkriti? :)
ker sem glih bil za racunalnikom in me je zanimalo, kako bi tole resil v Kotlinu, tlele je en web projektic:

https://try.kotlinlang.org/#/UserProjec...

Grega555 ::

Ima še mogoče kdo ta program in ga lahko uploada?

Najlepša hvala

LP

vilonja je izjavil:

Na katerem linku si pa dobil slovar, ker je vec linkov


Lahko mogoče program uploadaš ?

Najlepša Hvala

Zgodovina sprememb…

  • spremenilo: Grega555 ()

kuall ::

kombinatorika ni tako težka. to lahko sam zmutiš, ni hudič. je podobno lahka kot seštevanje in množenje v prvem razredu. pač novo je, malo moraš vklopit možgane ampak se da.
ne rabiš niti nikoli se tega učit v šoli niti brati kakšnih knjig, da bi znal to sam stuhtat.

mr_chai ::

Še v mojem najljubšem lispu. To se samo vidi, kako nepotrebna je vsa ta C-jevska solata zgoraj. Lispi se mi zdijo najbolj ekspresivni jeziki, v katerih se da povedati veliko z zelo malo kode. No, potem so še logični jeziki. V kakšnem prologu bi bile rešitve še krajše.

(defn rotations [a-seq]
  (rest (map concat (tails a-seq) (inits a-seq))))

(defn permutations [a-set]
  (if (empty? a-set)
    (list ())
    (mapcat
     (fn [[x & xs]] (map #(cons x %) (permutations xs)))
     (rotations a-set))))

7982884e ::

Grega555 je izjavil:

Ima še mogoče kdo ta program in ga lahko uploada?

Najlepša hvala

LP

vilonja je izjavil:

Na katerem linku si pa dobil slovar, ker je vec linkov


Lahko mogoče program uploadaš ?

Najlepša Hvala

imas ga v temi.
ce hoces, da kdo zate dela, torej zaganja pravilno okolje in ti builda se nek graficni vmesnik, najbolje da mu placas. lahko povprasas kaksne studente na FRI ali celo na srednji soli vegova.

sbawe64 ::

Linki iz dropboxa ne delajo več.

iskalnik
https://gofile.io/d/QgyPcL
2020 is new 1984
Corona World order

Spura ::

mr_chai je izjavil:

Še v mojem najljubšem lispu. To se samo vidi, kako nepotrebna je vsa ta C-jevska solata zgoraj. Lispi se mi zdijo najbolj ekspresivni jeziki, v katerih se da povedati veliko z zelo malo kode. No, potem so še logični jeziki. V kakšnem prologu bi bile rešitve še krajše.


(defn rotations [a-seq]
(rest (map concat (tails a-seq) (inits a-seq))))

(defn permutations [a-set]
(if (empty? a-set)
(list ())
(mapcat
(fn [[x & xs]] (map #(cons x %) (permutations xs)))
(rotations a-set))))
Ti manjkata se tails in inits funkciji. To je tona kode, in 4 funkcije ko lahko naredis preprosto:
(defn permutations
  [items]
  (for [i (range (count items))
        :let [[lead [x & tail]] (split-at i items)]
        p (or (seq (permutations (concat lead tail))) [[]])]
    (conj p x)))

XyNOBvxWVJ ::

Whata? Najprej pretvoriš izraze slovarja v sortirano zaporedje znakov, isto velja za iskano besedo in potem imaš direktne matche, zakaj hudiča permutacije, kaj če imaš dolgo besedo - dialektičnomaterialističen - to bi vi delali 26! (pač, odvisno od ponavljajočih se znakov, ja, drži, kripto mesi) permutacij? Čemu?

Zgodovina sprememb…

ginekk ::

Izgleda je nek profesor privlekel na dan 7 let staro seminarsko in je spet aktualno.

XyNOBvxWVJ ::

A s temi prsti (mindsetom) vi prodajate svetovalne storitve ali kaj?
Kar se mene tiče, odpoved, veljavna takoj.

7982884e ::

mr_chai je izjavil:

Še v mojem najljubšem lispu. To se samo vidi, kako nepotrebna je vsa ta C-jevska solata zgoraj. Lispi se mi zdijo najbolj ekspresivni jeziki, v katerih se da povedati veliko z zelo malo kode. No, potem so še logični jeziki. V kakšnem prologu bi bile rešitve še krajše.


(defn rotations [a-seq]
(rest (map concat (tails a-seq) (inits a-seq))))

(defn permutations [a-set]
(if (empty? a-set)
(list ())
(mapcat
(fn [[x & xs]] (map #(cons x %) (permutations xs)))
(rotations a-set))))

najboljsa stvar teh akademskih jezikov je, kako neprimerljiva je navdusenost njihovih avtorjev napram prakticni uporabnosti (beri: berljivost) (da o casovni kompleksnosti ne govorim).

kotlin (pragmaticen moderen jezik):


fun main() {   
    val set = setOf("ena", "dva", "vojna", "javno")

    val mapped = set.groupBy { it.sortedKey() }

    println("Slovar: ${mapped.map { "${it.key}: ${it.value.joinToString()}" }.joinToString()}")
            
    val new = "vnoaj"
    
    val matching = mapped[new.sortedKey()]
        
   println("Ustrezajoce: ${matching?.joinToString() ?: "-"}")
}

fun String.sortedKey() = toCharArray().sorted().joinToString("")



(ne bom rekel da so println vrstice to, kar bi pisal v produkcijski kodi (ker je grdo), ampak ok.)

Zgodovina sprememb…

  • spremenilo: 7982884e ()

mr_chai ::

Spura je izjavil:

mr_chai je izjavil:

Še v mojem najljubšem lispu. To se samo vidi, kako nepotrebna je vsa ta C-jevska solata zgoraj. Lispi se mi zdijo najbolj ekspresivni jeziki, v katerih se da povedati veliko z zelo malo kode. No, potem so še logični jeziki. V kakšnem prologu bi bile rešitve še krajše.


(defn rotations [a-seq]
(rest (map concat (tails a-seq) (inits a-seq))))

(defn permutations [a-set]
(if (empty? a-set)
(list ())
(mapcat
(fn [[x & xs]] (map #(cons x %) (permutations xs)))
(rotations a-set))))
Ti manjkata se tails in inits funkciji. To je tona kode, in 4 funkcije ko lahko naredis preprosto:

(defn permutations
[items]
(for [i (range (count items))
:let [[lead [x & tail]] (split-at i items)]
p (or (seq (permutations (concat lead tail))) [[]])]
(conj p x)))


Sem sam kopiral iz stackexchange-a, drugače bi naredil nekaj podobnega. Imaš pa samo en problem, concat ni glih optimalna rešitev v kombinaciji z lazy sequenci. boljše bi bilo namesto (concat lead tail) uporabiti (into lead tail). Source: https://stuartsierra.com/2015/04/26/clo...

Zimonem ::

Tama primerna slotecku, kjer se stari dodali skregajo okrog premutacij. Zlata vredno.

mr_chai ::

7982884e je izjavil:


najboljsa stvar teh akademskih jezikov je, kako neprimerljiva je navdusenost njihovih avtorjev napram prakticni uporabnosti (beri: berljivost) (da o casovni kompleksnosti ne govorim).

kotlin (pragmaticen moderen jezik):



fun main() {
val set = setOf("ena", "dva", "vojna", "javno")

val mapped = set.groupBy { it.sortedKey() }

println("Slovar: ${mapped.map { "${it.key}: ${it.value.joinToString()}" }.joinToString()}")

val new = "vnoaj"

val matching = mapped[new.sortedKey()]

println("Ustrezajoce: ${matching?.joinToString() ?: "-"}")
}

fun String.sortedKey() = toCharArray().sorted().joinToString("")



(ne bom rekel da so println vrstice to, kar bi pisal v produkcijski kodi (ker je grdo), ampak ok.)


Ne razumem kaj hočeš povedati. Clojure ni akademski jezik, je zelo pragmatičen in uporaben.

Primer tvoje kode v CLojureju.

(def dict
  (group-by set ["ena" "dva" "vojna" "javno"]))

(get dict (set "ajnov")) 


Ampak nočem pretiravat o tem, da je koda krajša, mogoče je, mogoče ni. Verjamem, da se da tudi v Kotlinu kaj zelo na kratko, saj vendar tudi podpira funkcijsko programiranje. Glavni point Clojureja je drugje, built in persistenčne podatkovne strukture, REPL driven development..To so dve strani IMHO največji plus jezika in pa seveda forsiranje funkcijskega programiranja.

XyNOBvxWVJ ::

798 je ponazoril rešitev brez permutacij:
fun String.sortedKey() = toCharArray().sorted().joinToString("")

Pri besedi od 26 znakov bi moral naredit 26! (=403,291,461,126,605,635,584,000,000) permutacij, ni ravno nekaj, kar bi bilo zaključeno v trenutku.
Dvomim tudi, da tvoj program obravnava ponavljajoče se znake (s čimer bi preskočil podmnožico ponovljenih permutacij).
Za podrobnosti vprašaj kripto mesi-ja.

Zgodovina sprememb…

1
2
»


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Python permutacije slo. besed

Oddelek: Programiranje
152071 (1517) epsilon
»

Python - pomoč (strani: 1 2 3 )

Oddelek: Programiranje
10317179 (7927) black ice
»

[C#] Domača naloga - osnove

Oddelek: Programiranje
372347 (1564) 11tomi12
»

mysql, permutacije in besede v slovarju

Oddelek: Programiranje
151681 (1371) Hayabusa
»

[Java] Frekvenca besed

Oddelek: Programiranje
71227 (1081) zila90

Več podobnih tem