{"id":16859,"date":"2025-04-01T10:30:15","date_gmt":"2025-04-01T07:30:15","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/"},"modified":"2025-04-01T10:30:15","modified_gmt":"2025-04-01T07:30:15","slug":"leetcode-49-anagram-gruplandirma-javascript-cozumu","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/","title":{"rendered":"LeetCode 49: Anagram Grupland\u0131rma &#8211; JavaScript \u00c7\u00f6z\u00fcm\u00fc"},"content":{"rendered":"<p><body><\/p>\n<p>LeetCode 49: Anagram Grupland\u0131rma &#8211; JavaScript \u00c7\u00f6z\u00fcm\u00fc<\/p>\n<p>Bu makalede, LeetCode&#8217;un pop\u00fcler algoritma problemlerinden biri olan &#8220;Anagram Grupland\u0131rma&#8221; (Group Anagrams) problemine JavaScript dilinde nas\u0131l \u00e7\u00f6z\u00fcm getirilebilece\u011fini detayl\u0131 olarak ele alaca\u011f\u0131z.  Problem, verilen bir dizi string&#8217;i anagram olan gruplar halinde toplamam\u0131z\u0131 istiyor. \u00d6rne\u011fin, [&#8220;eat&#8221;, &#8220;tea&#8221;, &#8220;tan&#8221;, &#8220;ate&#8221;, &#8220;nat&#8221;, &#8220;bat&#8221;] girdisi i\u00e7in \u00e7\u0131kt\u0131  [[&#8220;bat&#8221;],[&#8220;nat&#8221;,&#8221;tan&#8221;],[&#8220;ate&#8221;,&#8221;eat&#8221;,&#8221;tea&#8221;]] olmal\u0131d\u0131r.  \u00d6ncelikle, anagram\u0131n ne oldu\u011funu hat\u0131rlayal\u0131m. Anagram, harflerinin yer de\u011fi\u015ftirilmesiyle ba\u015fka bir kelime olu\u015fturulmas\u0131na olanak sa\u011flayan kelimedir.  Dolay\u0131s\u0131yla, &#8220;eat&#8221;, &#8220;tea&#8221; ve &#8220;ate&#8221; birbirlerinin anagramlar\u0131d\u0131r.<\/p>\n<p>Bu problemi \u00e7\u00f6zmek i\u00e7in \u00e7e\u015fitli yakla\u015f\u0131mlar kullan\u0131labilir. Ancak, en verimli ve anla\u015f\u0131l\u0131r y\u00f6ntemlerden biri, her bir kelimenin karakterlerinin s\u0131ralanm\u0131\u015f halini bir anahtar olarak kullanarak bir hash table (JavaScript&#8217;te Object) olu\u015fturmakt\u0131r.  Bu sayede, ayn\u0131 karakterlere sahip kelimeler ayn\u0131 anahtara sahip olacak ve ayn\u0131 gruba ait olacaklard\u0131r.  \u0130\u015fte ad\u0131m ad\u0131m \u00e7\u00f6z\u00fcm:<\/p>\n<h2>\u00c7\u00f6z\u00fcm Ad\u0131mlar\u0131<\/h2>\n<ol>\n<li><strong>Girdi Dizi \u0130\u015flemesi:<\/strong> \u0130lk olarak, girdi olarak verilen string dizisini ele al\u0131r\u0131z. <\/li>\n<li><strong>S\u0131ralama ve Anahtar Olu\u015fturma:<\/strong> Her bir string i\u00e7in karakterlerini alfabetik s\u0131raya g\u00f6re s\u0131ralar ve bu s\u0131ral\u0131 string&#8217;i hash table&#8217;\u0131n anahtar\u0131 olarak kullan\u0131r\u0131z.  Bu anahtar, s\u00f6z konusu kelimenin anagram grubunu temsil eder.<\/li>\n<li><strong>Hash Table&#8217;a Ekleme:<\/strong> S\u0131ralanm\u0131\u015f string (anahtar), hash table&#8217;da mevcut de\u011filse, yeni bir dizi olu\u015fturup bu string&#8217;i bu diziye ekleriz. Daha sonra, bu diziyi hash table&#8217;da ilgili anahtar\u0131n de\u011ferine atar\u0131z.  E\u011fer anahtar zaten mevcutsa, ilgili diziye orijinal string&#8217;i ekleriz.<\/li>\n<li><strong>Sonu\u00e7 Dizi Olu\u015fturma:<\/strong>  Hash table&#8217;\u0131n t\u00fcm de\u011ferlerini (yani, anagram gruplar\u0131n\u0131) bir sonu\u00e7 dizisine toplar\u0131z. Bu sonu\u00e7 dizisi, istenen \u00e7\u0131kt\u0131 olacakt\u0131r.<\/li>\n<\/ol>\n<h2>JavaScript Kodu<\/h2>\n<pre><code>\n\/**\n * @param {string[]} strs\n * @return {string[][]}\n *\/\nvar groupAnagrams = function(strs) {\n    const anagramMap = {};\n    for (const str of strs) {\n        const sortedStr = str.split('').sort().join('');\n        if (!anagramMap[sortedStr]) {\n            anagramMap[sortedStr] = [];\n        }\n        anagramMap[sortedStr].push(str);\n    }\n    return Object.values(anagramMap);\n};\n<\/code><\/pre>\n<p>Bu kod, \u00f6ncelikle bo\u015f bir anagramMap nesnesi olu\u015fturur. Daha sonra, girdi dizisindeki her bir string i\u00e7in karakterleri s\u0131ralar ve bu s\u0131ral\u0131 string&#8217;i anahtar olarak kullanarak  anagramMap&#8217;e ekler.  Object.values() metodu ile de  anagramMap&#8217;in de\u011ferlerini (yani, anagram gruplar\u0131n\u0131) i\u00e7eren bir dizi elde ederiz. Sonu\u00e7 olarak,  verilen string dizisinin anagram gruplar\u0131n\u0131 i\u00e7eren bir dizi d\u00f6nd\u00fcr\u00fcr.<\/p>\n<p>Bu \u00e7\u00f6z\u00fcm\u00fcn zaman karma\u015f\u0131kl\u0131\u011f\u0131 O(NKlogK) ve uzay karma\u015f\u0131kl\u0131\u011f\u0131 O(NK) &#8216;d\u0131r, burada N string say\u0131s\u0131 ve K ortalama string uzunlu\u011fudur.  Daha verimli \u00e7\u00f6z\u00fcmler de mevcut olsa da, bu \u00e7\u00f6z\u00fcm\u00fcn anla\u015f\u0131l\u0131rl\u0131\u011f\u0131 ve okunabilirli\u011fi a\u00e7\u0131s\u0131ndan olduk\u00e7a iyidir.<\/p>\n<p>Umar\u0131m bu makale, LeetCode 49 problemini anlama ve \u00e7\u00f6zme konusunda size yard\u0131mc\u0131 olmu\u015ftur.  Daha fazla algoritma ve veri yap\u0131s\u0131 \u00e7\u00f6z\u00fcm\u00fc i\u00e7in <a href=\"https:\/\/fatihsoysal.com\">fatihsoysal.com<\/a> adresini ziyaret edebilirsiniz.  Ayr\u0131ca, konu ile ilgili daha fazla bilgi i\u00e7in <a href=\"https:\/\/dev.to\/rahulgithubweb\/leetcode-challenge-49-group-anagrams-javascript-solution-3m60\">bu ba\u011flant\u0131ya<\/a> g\u00f6z atabilirsiniz.<\/p>\n<p>#Etiketler: LeetCode, JavaScript, Anagram, Algoritma, Veri Yap\u0131s\u0131, Programlama, \u00c7\u00f6z\u00fcm, Gruplama, Hash Table, Anagram Grupland\u0131rma,  Group Anagrams<\/p>\n<p><\/body><br \/>\n<\/html><\/p>\n","protected":false},"excerpt":{"rendered":"LeetCode 49: Anagram Grupland\u0131rma &#8211; JavaScript \u00c7\u00f6z\u00fcm\u00fc Bu makalede, LeetCode&#8217;un pop\u00fcler algoritma problemlerinden biri olan &#8220;Anagram Grupland\u0131rma&#8221; (Group&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-16859","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>LeetCode 49: Anagram Grupland\u0131rma - JavaScript \u00c7\u00f6z\u00fcm\u00fc<\/title>\n<meta name=\"description\" content=\"Bu makalede, LeetCode&#039;un pop\u00fcler algoritma problemlerinden biri olan &quot;Anagram Grupland\u0131rma&quot; (Group Anagrams) problemine JavaScript dilinde nas\u0131l \u00e7\u00f6z\u00fcm getirilebilece\u011fini detayl\u0131 olarak ele alaca\u011f\u0131z. Problem, verilen bir dizi string&#039;i anagram olan gruplar halinde toplamam\u0131z\u0131 istiyor. \u00d6rne\u011fin, [&quot;eat&quot;, &quot;tea&quot;, &quot;tan&quot;, &quot;ate&quot;, &quot;nat&quot;, &quot;bat&quot;] girdisi i\u00e7in \u00e7\u0131kt\u0131 [[&quot;bat&quot;],[&quot;nat&quot;,&quot;tan&quot;],[&quot;ate&quot;,&quot;eat&quot;,&quot;tea&quot;]] olmal\u0131d\u0131r. \u00d6ncelikle, anagram\u0131n ne oldu\u011funu hat\u0131rlayal\u0131m. Anagram, harflerinin yer de\u011fi\u015ftirilmesiyle ba\u015fka bir kelime olu\u015fturulmas\u0131na olanak sa\u011flayan kelimedir. Dolay\u0131s\u0131yla, &quot;eat&quot;, &quot;tea&quot; ve &quot;ate&quot; birbirlerinin anagramlar\u0131d\u0131r.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"LeetCode 49: Anagram Grupland\u0131rma - JavaScript \u00c7\u00f6z\u00fcm\u00fc\" \/>\n<meta property=\"og:description\" content=\"Bu makalede, LeetCode&#039;un pop\u00fcler algoritma problemlerinden biri olan &quot;Anagram Grupland\u0131rma&quot; (Group Anagrams) problemine JavaScript dilinde nas\u0131l \u00e7\u00f6z\u00fcm getirilebilece\u011fini detayl\u0131 olarak ele alaca\u011f\u0131z. Problem, verilen bir dizi string&#039;i anagram olan gruplar halinde toplamam\u0131z\u0131 istiyor. \u00d6rne\u011fin, [&quot;eat&quot;, &quot;tea&quot;, &quot;tan&quot;, &quot;ate&quot;, &quot;nat&quot;, &quot;bat&quot;] girdisi i\u00e7in \u00e7\u0131kt\u0131 [[&quot;bat&quot;],[&quot;nat&quot;,&quot;tan&quot;],[&quot;ate&quot;,&quot;eat&quot;,&quot;tea&quot;]] olmal\u0131d\u0131r. \u00d6ncelikle, anagram\u0131n ne oldu\u011funu hat\u0131rlayal\u0131m. Anagram, harflerinin yer de\u011fi\u015ftirilmesiyle ba\u015fka bir kelime olu\u015fturulmas\u0131na olanak sa\u011flayan kelimedir. Dolay\u0131s\u0131yla, &quot;eat&quot;, &quot;tea&quot; ve &quot;ate&quot; birbirlerinin anagramlar\u0131d\u0131r.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-04-01T07:30:15+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"LeetCode 49: Anagram Grupland\u0131rma &#8211; JavaScript \u00c7\u00f6z\u00fcm\u00fc\",\"datePublished\":\"2025-04-01T07:30:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/\"},\"wordCount\":495,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/\",\"name\":\"LeetCode 49: Anagram Grupland\u0131rma - JavaScript \u00c7\u00f6z\u00fcm\u00fc\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-04-01T07:30:15+00:00\",\"description\":\"Bu makalede, LeetCode'un pop\u00fcler algoritma problemlerinden biri olan \\\"Anagram Grupland\u0131rma\\\" (Group Anagrams) problemine JavaScript dilinde nas\u0131l \u00e7\u00f6z\u00fcm getirilebilece\u011fini detayl\u0131 olarak ele alaca\u011f\u0131z. Problem, verilen bir dizi string'i anagram olan gruplar halinde toplamam\u0131z\u0131 istiyor. \u00d6rne\u011fin, [\\\"eat\\\", \\\"tea\\\", \\\"tan\\\", \\\"ate\\\", \\\"nat\\\", \\\"bat\\\"] girdisi i\u00e7in \u00e7\u0131kt\u0131 [[\\\"bat\\\"],[\\\"nat\\\",\\\"tan\\\"],[\\\"ate\\\",\\\"eat\\\",\\\"tea\\\"]] olmal\u0131d\u0131r. \u00d6ncelikle, anagram\u0131n ne oldu\u011funu hat\u0131rlayal\u0131m. Anagram, harflerinin yer de\u011fi\u015ftirilmesiyle ba\u015fka bir kelime olu\u015fturulmas\u0131na olanak sa\u011flayan kelimedir. Dolay\u0131s\u0131yla, \\\"eat\\\", \\\"tea\\\" ve \\\"ate\\\" birbirlerinin anagramlar\u0131d\u0131r.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"LeetCode 49: Anagram Grupland\u0131rma &#8211; JavaScript \u00c7\u00f6z\u00fcm\u00fc\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"LeetCode 49: Anagram Grupland\u0131rma - JavaScript \u00c7\u00f6z\u00fcm\u00fc","description":"Bu makalede, LeetCode'un pop\u00fcler algoritma problemlerinden biri olan \"Anagram Grupland\u0131rma\" (Group Anagrams) problemine JavaScript dilinde nas\u0131l \u00e7\u00f6z\u00fcm getirilebilece\u011fini detayl\u0131 olarak ele alaca\u011f\u0131z. Problem, verilen bir dizi string'i anagram olan gruplar halinde toplamam\u0131z\u0131 istiyor. \u00d6rne\u011fin, [\"eat\", \"tea\", \"tan\", \"ate\", \"nat\", \"bat\"] girdisi i\u00e7in \u00e7\u0131kt\u0131 [[\"bat\"],[\"nat\",\"tan\"],[\"ate\",\"eat\",\"tea\"]] olmal\u0131d\u0131r. \u00d6ncelikle, anagram\u0131n ne oldu\u011funu hat\u0131rlayal\u0131m. Anagram, harflerinin yer de\u011fi\u015ftirilmesiyle ba\u015fka bir kelime olu\u015fturulmas\u0131na olanak sa\u011flayan kelimedir. Dolay\u0131s\u0131yla, \"eat\", \"tea\" ve \"ate\" birbirlerinin anagramlar\u0131d\u0131r.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/","og_locale":"tr_TR","og_type":"article","og_title":"LeetCode 49: Anagram Grupland\u0131rma - JavaScript \u00c7\u00f6z\u00fcm\u00fc","og_description":"Bu makalede, LeetCode'un pop\u00fcler algoritma problemlerinden biri olan \"Anagram Grupland\u0131rma\" (Group Anagrams) problemine JavaScript dilinde nas\u0131l \u00e7\u00f6z\u00fcm getirilebilece\u011fini detayl\u0131 olarak ele alaca\u011f\u0131z. Problem, verilen bir dizi string'i anagram olan gruplar halinde toplamam\u0131z\u0131 istiyor. \u00d6rne\u011fin, [\"eat\", \"tea\", \"tan\", \"ate\", \"nat\", \"bat\"] girdisi i\u00e7in \u00e7\u0131kt\u0131 [[\"bat\"],[\"nat\",\"tan\"],[\"ate\",\"eat\",\"tea\"]] olmal\u0131d\u0131r. \u00d6ncelikle, anagram\u0131n ne oldu\u011funu hat\u0131rlayal\u0131m. Anagram, harflerinin yer de\u011fi\u015ftirilmesiyle ba\u015fka bir kelime olu\u015fturulmas\u0131na olanak sa\u011flayan kelimedir. Dolay\u0131s\u0131yla, \"eat\", \"tea\" ve \"ate\" birbirlerinin anagramlar\u0131d\u0131r.","og_url":"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-04-01T07:30:15+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"3 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"LeetCode 49: Anagram Grupland\u0131rma &#8211; JavaScript \u00c7\u00f6z\u00fcm\u00fc","datePublished":"2025-04-01T07:30:15+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/"},"wordCount":495,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/","url":"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/","name":"LeetCode 49: Anagram Grupland\u0131rma - JavaScript \u00c7\u00f6z\u00fcm\u00fc","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-04-01T07:30:15+00:00","description":"Bu makalede, LeetCode'un pop\u00fcler algoritma problemlerinden biri olan \"Anagram Grupland\u0131rma\" (Group Anagrams) problemine JavaScript dilinde nas\u0131l \u00e7\u00f6z\u00fcm getirilebilece\u011fini detayl\u0131 olarak ele alaca\u011f\u0131z. Problem, verilen bir dizi string'i anagram olan gruplar halinde toplamam\u0131z\u0131 istiyor. \u00d6rne\u011fin, [\"eat\", \"tea\", \"tan\", \"ate\", \"nat\", \"bat\"] girdisi i\u00e7in \u00e7\u0131kt\u0131 [[\"bat\"],[\"nat\",\"tan\"],[\"ate\",\"eat\",\"tea\"]] olmal\u0131d\u0131r. \u00d6ncelikle, anagram\u0131n ne oldu\u011funu hat\u0131rlayal\u0131m. Anagram, harflerinin yer de\u011fi\u015ftirilmesiyle ba\u015fka bir kelime olu\u015fturulmas\u0131na olanak sa\u011flayan kelimedir. Dolay\u0131s\u0131yla, \"eat\", \"tea\" ve \"ate\" birbirlerinin anagramlar\u0131d\u0131r.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-49-anagram-gruplandirma-javascript-cozumu\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"LeetCode 49: Anagram Grupland\u0131rma &#8211; JavaScript \u00c7\u00f6z\u00fcm\u00fc"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/16859","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=16859"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/16859\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=16859"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=16859"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=16859"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}