- एक्ज़िक्यूटर्स
-
सीखें
Python सीखें चलने योग्य उदाहरण, NumPy, pandas और बहुत कुछ AI सीखेंन्यूरल नेटवर्क, ML और LLM शुरू से C और C++ सीखें पॉइंटर, मेमोरी, STL और आधुनिक C++ C# सीखेंC# मूल बातें, OOP, LINQ, async और .NET अभ्यास Matplotlib सीखेंलाइन, बार, स्कैटर और पाई चार्ट, इंटरैक्टिव विज़ुअलाइज़र के साथ Python एल्गोरिदम खोज, सॉर्टिंग, रिकर्शन और विज़ुअलाइज़र O(n) C और C++ एल्गोरिदम C और C++ कार्यान्वयन की तुलना करें बच्चों के लिए कोडिंग खेलते-खेलते कोडिंग सीखो!
- चैलेंजनया
- शिक्षकों के लिएनया
- अपडेट्स
- मुझे एक कॉफ़ी पिलाएँ
The grid holds 1 for land and 0 for water. Land cells that touch up, down, left or right belong to the same island. Count the islands; a recursive flood fill is a natural approach.
Implement count_islands(grid).
Input
grid: A rectangular grid of 0s and 1s.
Output
Return the number of islands.
सीमाएँ
0 ≤ rows, columns ≤ 100
उदाहरण
उदाहरण 1
इनपुट:
grid = [
[1, 1, 0, 0],
[0, 1, 0, 1],
[0, 0, 0, 1]
]
अपेक्षित आउटपुट:
2
व्याख्या
The top-left group of 3 cells is one island; the two 1s on the right form a second: 2.
उदाहरण 2
इनपुट:
grid = [
[1, 0, 1],
[0, 1, 0]
]
अपेक्षित आउटपुट:
3
व्याख्या
Diagonal neighbors don't connect, so each 1 is its own island: 3.
संदर्भ
-
उदाहरण 1 नहीं चलाया गयाइनपुट:
grid = [ [1, 1, 0, 0], [0, 1, 0, 1], [0, 0, 0, 1] ]अपेक्षित आउटपुट:2आपका आउटपुट -
उदाहरण 2 नहीं चलाया गयाइनपुट:
grid = [ [1, 0, 1], [0, 1, 0] ]अपेक्षित आउटपुट:3आपका आउटपुट
सबमिट करने पर 4 छुपे हुए टेस्ट भी चलेंगे। अगर आपका कोड किसी में फेल होता है, तो आप वह टेस्ट देखेंगे। सभी देखने के लिए चैलेंज हल करें।
Online JavaScript Runner
Write, run, and debug JavaScript or Node.js online in a full-featured browser IDE. Work with multiple files and packages, save your workspace, and collaborate in real time.
🚀 339,661 कुल निष्पादन (665 इस महीने)
कोडिंग चैलेंज के साथ JavaScript का अभ्यास करें
सीधे इस एडिटर में प्रैक्टिकल समस्याएँ हल करें: सैंपल टेस्ट चलाएँ, सबमिट करें, और AI कोड रिव्यू पाएं।
⚡ इस JavaScript (Node.js) ऑनलाइन एक्ज़ीक्यूटर के बारे में
CodeUtility JavaScript Executor आपको सीधे ब्राउज़र में आधुनिक JavaScript कोड लिखने और चलाने देता है - तुरंत और बिना किसी सेटअप के। यह आपके कोड को सुरक्षित रूप से सैंडबॉक्स्ड कंटेनर में चलाने के लिए असली Node.js वातावरण का उपयोग करता है, और 16, 18, और 20 संस्करणों को सपोर्ट करता है।
यह टूल Node.js स्निपेट्स टेस्ट करने, ES6+ सिंटैक्स एक्सप्लोर करने, या JavaScript के मूल कॉन्सेप्ट्स जैसे loops, functions, arrays, promises, और async/await व्यवहार सीखने के लिए एकदम बढ़िया है।
आप इसे एल्गोरिदम वैलिडेट करने, छोटे स्क्रिप्ट्स डिबग करने, या बिना लोकली Node इंस्टॉल किए रनटाइम लॉजिक के साथ प्रयोग करने के लिए भी इस्तेमाल कर सकते हैं। यह सीखने वालों, बैकएंड डेवलपर्स, या उन सभी के लिए आदर्श है जिन्हें ब्राउज़र में तेज़ी से JavaScript कोड चलाने का तरीका चाहिए।
सिर्फ़ एक कोड रनर से कहीं अधिक
एक ही एक्ज़ीक्यूटर में मल्टी-फ़ाइल एडिटर, अलग-थलग निष्पादन टर्मिनल, रनटाइम-विशिष्ट लाइब्रेरी, स्थायी वर्कस्पेस, साझाकरण और रीयल-टाइम सहयोग का उपयोग करें।
इस एक्ज़ीक्यूटर का उपयोग कैसे करें?
रनटाइम चुनें, फ़ाइल खोलें या बनाएँ, अपना कोड लिखें और चलाएँ चुनें। आउटपुट टर्मिनल में दिखाई देता है। साइन-इन उपयोगकर्ता वर्कस्पेस में फ़ाइलें रख सकते हैं, लाइब्रेरी इंस्टॉल कर सकते हैं और शेयर के माध्यम से सहयोग कर सकते हैं।
- एक संस्करण चुनें और वर्तमान फ़ाइल संपादित करें या वर्कस्पेस की दूसरी फ़ाइल खोलें।
- कोड चलाएँ, माँगे जाने पर टर्मिनल में इनपुट दें और सहेजा गया रन इतिहास देखें।
- जब कार्य के लिए एक से अधिक कोड अंश चाहिए, तो लाइब्रेरी, वर्कस्पेस टूल, शेयरिंग और चैट का उपयोग करें।
💡 शुरुआती लोगों के लिए Node.js बेसिक्स गाइड
1. वेरिएबल और कॉन्स्टेंट की घोषणा
ब्लॉक-स्कोप्ड वेरिएबल्स के लिए let या const का उपयोग करें। const कॉन्स्टेंट्स के लिए होता है।
let x = 10;
const PI = 3.14;
let name = "Alice";
let isActive = true;
2. कंडीशनल्स (if / switch)
कंट्रोल फ्लो के लिए if, else if, else या switch का उपयोग करें।
let x = 2;
if (x === 1) {
console.log("एक");
} else if (x === 2) {
console.log("दो");
} else {
console.log("अन्य");
}
switch (x) {
case 1:
console.log("एक");
break;
case 2:
console.log("दो");
break;
default:
console.log("अन्य");
}
3. लूप्स
डेटा पर इटरेट करने के लिए for, while, और forEach का उपयोग करें।
for (let i = 0; i < 3; i++) {
console.log(i);
}
let n = 3;
while (n > 0) {
console.log(n);
n--;
}
4. एरेज़
वैल्यूज़ की क्रमबद्ध सूची रखने के लिए एरे का उपयोग करें। इन्हें इंडेक्स से एक्सेस करें।
let fruits = ["apple", "banana", "cherry"];
console.log(fruits[0]);
console.log(fruits.length);
5. एरे संचालन
push, pop, slice, और reverse जैसी मेथड्स का उपयोग करें।
fruits.push("kiwi");
fruits.pop();
console.log(fruits.slice(0, 2));
console.log(fruits.reverse());
let squares = [1, 2, 3, 4, 5].map(x => x * x);
console.log(squares);
6. कंसोल इनपुट/आउटपुट
आउटपुट के लिए console.log और इनपुट के लिए readline मॉड्यूल का उपयोग करें।
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
rl.question("आपका नाम क्या है? ", name => {
console.log(`नमस्ते, ${name}`);
rl.close();
});
7. फंक्शंस
फंक्शंस डिक्लेयर किए जा सकते हैं या एक्सप्रेशन के रूप में लिखे जा सकते हैं। मॉडर्न JavaScript में ऐरो फंक्शंस अक्सर उपयोग होते हैं।
function greet(name) {
return `नमस्ते, ${name}`;
}
const add = (a, b) => a + b;
console.log(greet("Alice"));
console.log(add(2, 3));
8. ऑब्जेक्ट्स (मैप्स)
ऑब्जेक्ट्स key-value पेयर्स स्टोर करते हैं। ये डिक्शनरी या मैप्स जैसे होते हैं।
let person = { name: "Bob", age: 25 };
console.log(person.name);
console.log(person["age"]);
// ES6 मैप
const map = new Map();
map.set("a", 1);
console.log(map.get("a"));
9. एक्सेप्शन हैंडलिंग
एरर को सुरक्षित तरीके से हैंडल करने के लिए try, catch, और finally का उपयोग करें।
try {
throw new Error("कुछ गलत हो गया");
} catch (e) {
console.log(e.message);
} finally {
console.log("जरूरत हो तो क्लीनअप");
}
10. फ़ाइल I/O
फ़ाइलें पढ़ने और लिखने के लिए Node.js के fs मॉड्यूल का उपयोग करें।
const fs = require("fs");
fs.writeFileSync("test.txt", "हैलो फ़ाइल");
const data = fs.readFileSync("test.txt", "utf8");
console.log(data);
11. स्ट्रिंग संचालन
trim(), toUpperCase(), replace(), और split() जैसी मेथड्स का उपयोग करें।
let text = " Hello World ";
console.log(text.trim());
console.log(text.toUpperCase());
console.log(text.replace("Hello", "Hi"));
console.log(text.split(" "));
12. क्लासेस और ऑब्जेक्ट्स
ES6+ class सिंटैक्स के साथ OOP को सपोर्ट करता है।
class Person {
constructor(name) {
this.name = name;
}
greet() {
return `हाय, मैं ${this.name} हूँ`;
}
}
const p = new Person("Alice");
console.log(p.greet());
13. रेफरेंसेज़
JavaScript में ऑब्जेक्ट्स और एरे रेफरेंस से पास होते हैं।
function update(arr) {
arr.push("changed");
}
let data = ["original"];
update(data);
console.log(data); // ["original", "changed"]