Sobes.tech

Kotlin

Join yöntemi için hangi test vakaları göz önünde bulundurulmalı? Hangi optimizasyonlar eklenebilir?

Senior
291

// rezervasyon(koltuk_id, kullanıcı_id) PostgreSQL Begin Transaction(read_commited) seat = select * from seats where id = seat_id for update if(seat == null || seat.status == "booked") rollback return error("Koltuk mevcut değil") insert into bookings (user_id, seat_id, status, created_at) values (user_id, ...) update seats set status = 'booked' where id = seat_id commit return success()

Senior
218

Map'te anahtar kapanış parantezi, değer ise açılış parantezi neden? Tersine yaparsak ne değişir? containsValue ile get anahtarına göre karmaşıklık nedir?

Senior
196

/*Verilen bir dize olduğunu varsayalım, parantezlerin doğru gösterimini kontrol etmek için bir fonksiyon uygulamak gerekir. Her açılan parantezin karşılık gelen bir kapanış parantezi olmalıdır. Açılan ve kapanan parantezler doğru sırayla olmalıdır. Parantez türleri: "{", "}", "(", ")", "[", "]". Girdi: "([]){}[(()())()]" Sonuç: true Girdi: "[(])" Sonuç: false Çünkü 2. ve 3. parantezler yanlış gösterilmiştir, kapanış ']' önce kapanış '(' ile karşılaşılır. */ public boolean check(String s){ Deque<Character> stack = new ArrayDeque<>(); Map<Character, Character> map = Map.of( ')', '(', ']', '[', '}', '{' ); // ((( for( char c : s.toCharArray()){ if(map.containsValue(c)){ stack.push(c); } else if(map.containsKey(c)){ if( stack.isEmpty() || stack.pop() != map.get(c)){ return false; } } } return stack.isEmpty(); }

Senior
160

/* SEÇİM sol.K, sol.V1, sağ.V2 FROM sol JOIN sağ ON sol.K = sağ.K; */ public <K extends Comparable<K>, V1, V2> List<Triple<K, V1, V2>> join(List<Pair<K, V1>> sol, List<Pair<K, V2>> sağ) { return null; } private static class Pair<A, B> { private A ilk; private B ikinci; Pair(A ilk, B ikinci) { this.ilk = ilk; this.ikinci = ikinci; } } private static class Triple<A, B, C> { private A ilk; private B ikinci; private C ucuncu; Triple(A ilk, B ikinci, C ucuncu) { this.ilk = ilk; this.ikinci = ikinci; this.ucuncu = ucuncu; } }

Senior
159