- Mind a 3 (okj, infism, emelt é.) típusú feladatot tudom ajánlani mindenkinek, nagyon hasonló menetre megy az összes.
- Nem minden feladatból van megoldás az összes nyelven... A legelső megoldás mindig Java-ban készül el, azokból van a legtöbb.
- Java, C# és Python nyelveken általában 2 fajta megoldás van: Normál imperatív módon ciklusokkal, illetve funkcionális módszerrel.
- Nyelvenként szűrni a jobb oldali 'Languages' menüből lehet, rákell kattintani a nyelvre és csak azok a megoldások jelennek meg, amik abban a nyelvben vannak.
- Nyitni kell 1 issue-t, hogy hol és mi a hiba, esetleg hogyan lehetne megjavítani
- Ha lehet deszkriptív leírásokat írjunk...
- Nyitni kell 1 pull requestet, amiben benne van az új megoldás/hibajavítás
- Lehetőleg kövessük az eddigi megoldások stílusát, mappa elrendezését stb
- Ebben a repo-ban csak a programozás részhez szükséges fájlokat tárolom. Az eredeti források ezeken a linkeken érhető el:
- Érettségi & Informatika Ismeretek
- OKJ
- Java 11+:
Files.writeString(dataStr, utvonalPath) // Új
Files.write(dataStr.getBytes(), utvonalPath) // Régi
Path.of(utvonalStr) // Új
Paths.get(utvonalStr) // Régi
var x = 20 // Új
var y = "asd" // Új
int x = 20 // Régi
String y = "asd" // Régi
- Java 14+:
var y = "asd";
// Új
var x = switch(y) {
case "asd" -> "moo";
case "kek" -> "maa";
default -> "idk";
};
// Régi
String x;
switch(y) {
case "asd": x = "moo"; break;
case "kek": x = "maa"; break;
default : x = "idk";
}
// Új
var hosszu = """
Nagyon
Szeretem
A
Hosszú
Szövegeket
""";
// Régi
var hosszu = "Nagyon\n" +
"Szeretem\n" +
"A\n" +
"Hosszú\n" +
"Szövegeket";
- IEnumerable generator:
public static IEnumerable<T> Generate<T>(Func<T> generator) {
while(true) yield return generator.Invoke();
}
// Használat:
Generate(Console.ReadLine)
- IEnumerable ForEach extension
// Static classba kell tenni, ez a fv hiányzik a linq extensionok közül... -_-
public static void ForEach<T>(this IEnumerable<T> source, Action<T> action) {
foreach (T element in source) action(element);
}
- groupby
from itertools import groupby
data = [('c', 1), ('a', 2), ('b', 3), ('b', 4)]
# groupby használat előtt a bemenetnek sorbarendezettnek kell lennie a kulcs alapján
groups = dict((k, list(v)) for k, v in groupby(data, lambda x: x[0]))
print(groups) # {'c': [('c', 1)], 'a': [('a', 2)], 'b': [('b', 3), ('b', 4)]}
print(groups['c']) # [('c', 1)]
- frequency map
from collections import Counter
data = [('c', 1), ('a', 2), ('b', 3), ('b', 4)]
stat = Counter(k[0] for k in data)
print(stat) # Counter({'b': 2, 'c': 1, 'a': 1})
print(stat['b']) # 2
- dátumok és idő
from datetime import time, date, datetime
print(time.fromisoformat('23:53')) # .hour, .minute, .second
print(date.fromisoformat('2018-01-04')) # .year, .month, .day
print(datetime.fromisoformat('2018-01-04 23:53'))