Tengeneza mifuatano ya Moser-de Bruijn papo hapo. Fanya hesabu za jumla za nguvu tofauti za 4 kwa wasilishi wa kina cha 4 kwa kutumia tu 0 na 1. Zana ya mtandaoni ya bure kwa elimu ya hisabati na utafiti.
Mifululizo ya Moser-de Bruijn ina nambari ambazo zinaweza kuandikwa kama jumla ya nguvu tofauti za 4
Mfuatano wa Moser-de Bruijn unajumuisha nambari ambazo zinaweza kuwasilishwa kama jumla za nguvu tofauti za 4. Kwa jina la wanasayansi Leo Moser na Nicolaas Govert de Bruijn, mfuatano unaanza: 0, 1, 4, 5, 16, 17, 20, 21, 64, 65, 68, 69, 80, 81, 84, 85...
Nini kinafanya mfuatano huu kuwa ya kushangaza? Unapochora kila kielelezo katika msingi wa 4, utaona tu tarakimu 0 na 1—kamwe 2 au 3. Hii inamaanisha kila nambari inajengwa kwa kuongeza nguvu za 4 (kama 4⁰, 4¹, 4², 4³), ambapo kila nguvu inatokea mara moja au usipotokea.
Hapa kuna mfano madhubuti: Nambari 21 inaonekana katika mfuatano kwa sababu ni sawa na 16 + 4 + 1, ambayo ni 4² + 4¹ + 4⁰. Katika msingi wa 4, hii inaandikwa kama "111"—tu 0 na 1. Linganisha hii na 22, ambayo inahitaji "2" katika uwasilishaji wake wa msingi-4 (122), kwa hivyo haifai.
Mfuatano huu unaonekana katika nadharia ya nambari ya ziada, kombinatoriki, na utafiti wa miungu ya jumla. Fikiria kuwa ni jamaa wa msingi-4 wa mfuatano wa binary—badala ya nguvu za 2, unafanya kazi na nguvu za 4. Hii inakausha mfuatano sana kwa sababu wengi wa nambari za kawaida huachwa.
Kutumia kizalishaji hiki ni rahisi:
Mahesabu yanafanywa kabisa katika kivinjari chako kwa kutumia JavaScript, kwa hivyo hakuna kuchelewa kwa seva au kutegemea mtandao—ni haraka na inafanya kazi nje ya mtandao mara baada ya ukurasa kupakuliwa.
Kizalishaji kinathibitisha ingizo lako ili kuzuia makosa:
Kwa nini mpaka wa vipimo 1000? Ingawa algoravyo ni ya ufanisi, kuzalisha vipimo vingi elfu vinaweza kuvunja kumbukumbu ya kivinjari, haswa kwenye vifaa vya simu. Katika vitendo, nadra sana utahitaji zaidi ya vipimo 100-200 kwa uchambuzi wa kimatikamu au madhumuni ya elimu.
Unaweza kufafanua mfuatano wa Moser-de Bruijn kwa njia tatu sawa, kila moja ikipatia muelewa tofauti:
Umbo la Ziada (Nguvu za 4): Nambari n iko kwenye mfuatano pale unapoweza kuiandika kama: ambapo S ni seti yoyote ya nambari za usitihi. Kila nguvu ya 4 inaweza kuonekana mara moja au usionekane—hakuna marudio ruhusiwa.
Uwasilishaji wa Base-4 (Jaribio Rahisi): Badilisha nambari kwenye base 4. Ikiwa unaona tu 0 na 1 (bila 2 au 3), iko kwenye mfuatano. Hii ndiyo njia ya haraka zaidi ya kuchunguza uanachama kwa mkono.
Mahusiano ya Binary (Muhimu Sana kwa Mahesabu): Kupata kielelezo cha n (kuanzia n=0): ambapo ni tarakimu za binary za n. Maana: Chukua uwasilishaji wa binary wa kielezo chako, kisha ubadilishe kila bit ya "1" na nguvu sawa ya 4.
Tuchunguze jinsi hizi fafanuzi zinavyofanya kazi:
Mbinu ya mahusiano ya binary ndiyo jenereta hii inavyotumia chini ya maudhui—ni ya haraka kwa sababu shughuli za bitwise ni za kasi.
Jenereta hutumia ufanisi wa binary kwa sababu ni haraka na ya moja kwa moja:
Mchakato Hatua kwa Hatua:
Mfano Uliofanywa: Kutafuta Kipimo cha 6 (kiashiria 5)
Hebu tuhesabu M(5) hatua kwa hatua:
Mbinu hii inakuza vizuri. Kwa viashiria vikubwa, wewe kwa msingi unafanya kubadilisha bit na kuongeza—shughuli ambazo zana za kisasa za kusindika zinahifadhi kwa kasi sana.
Je, ungependa kuchunguza ikiwa namba fulani iko katika mfuatano wa Moser-de Bruijn? Tumia jaribio la base-4:
Mfano: Je, 85 iko katika mfuatano?
Mfano wa Kinyume: Je, 90 iko katika mfuatano?
Jenereta inatekeleza hili kwa kutumia vipima vya bitwise vya JavaScript, ambavyo ni asili ya lugha na vizuri sana katika browsers za kisasa.
Mfuatano wa Moser-de Bruijn unashughulikia namba za kamili:
Ukuaji huu wa kisanduku unamaanisha kwamba mfuatano unakua haraka sana. Kipimo cha 20 ni 340 tayari, na kipimo cha 100 tayari unashughulikia namba za milioni.
Kufundisha Mifumo ya Nambari: Pale ninapotumia hili katika madarasa, wanafunzi hufahamu kubadilisha mifumo ya msingi sana haraka wakati wanapoweza kucheza na mfuatano wa Moser-de Bruijn. Huunganisha pengo kati ya binary (msingi 2) na mifumo ya nambari iliyo na kina zaidi. Wanafunzi huona mara moja jinsi ya kubadilisha msingi unavyobadilisha ukichwa wa mfuatano.
Kuelewa Uendeshaji wa Biti: Wanafunzi wa sayansi ya kompyuta wanafaidika kwa kuona uhusiano wa moja kwa moja kati ya uwakilishi wa binary na mifuatano ya hesabu. Algoritmu inaonyesha jinsi ya kubadilisha uendeshaji wa biti kuwa vitu halisi vya hesabu—si tu uendeshaji ya kiufupi.
Kombinatoriki na Maudhui Yasiyo-ya-Jumla: Watafiti wanaochunguza msingi wa ziada hutumizia mifuatano kama hii ili kuchunguza ni maudhui gani yanayoruhusu uwakilishi wa kipekee. Mfuatano wa Moser-de Bruijn ni mfano wa kitaaluma wa maudhui ambapo kila nambari inayoweza kuwakilishwa ina uwakilishi mmoja tu.
Nadharia ya Nambari ya Ziada: Mfuatano husaidia kuchunguza maswali kuhusu jinsi ya kubengua nambari za kamili kuwa jumla. Una uhusiano na matatizo katika Tarakimu Mtandao ya Mifuatano ya Nambari za Kamili (OEIS), ambapo imesajiliwa kama A000695.
Usanidi wa Algoritmu: Algoritmu ya kutengeneza inaonyesha utengenezaji wa mfuatano kwa ufanisi. Unaweza kutengeneza vipimo vingi vya masharti kwa gharama ndogo sana ya uendeshaji, kufanya iwe muhimu kwa kufuatilia algoritmu au kufundisha mbinu za programu zenye ufanisi.
Kazi za Utambuzi wa Mifuatano: Wakati wa kufanya kazi na maudhui ya nambari za thara au mifumo ya kubana data, kuelewa jinsi mifuatano kama Moser-de Bruijn inavyoendesha husaidia kubuni maamuzi kuhusu mikakati ya kubana.
Ikiwa mifuatano ya Moser-de Bruijn inalikishwa, hizi mifuatano inayohusiana inatoa vipimo sawa na msingi tofauti au vizuizi:
Nguvu za 2 (OEIS A000079): 1, 2, 4, 8, 16, 32... Msingi wa kuongeza rahisi sana. Kila nguvu ya 2 inatokea mara moja tu, ikitunda misingi ya namba za binary.
Namba Zote Zisizo Negative (Jumla za Binary): 0, 1, 2, 3, 4, 5, 6, 7... Wakati unavyoruhusu jumla ya nguvu tofauti za 2, unapata kila namba inayowezekana—hivi ndivyo uwasilishaji wa binary unavyofanya.
Jumla za Nguvu Tofauti za 3 (OEIS A005836): 0, 1, 3, 4, 9, 10, 12, 13... Dhana sawa kama Moser-de Bruijn, lakini kwa kutumia nguvu za 3 badala ya 4. Hizi ni namba ambazo uwasilishaji wake wa base-3 una 0 na 1 tu.
Namba za Fibbinary (OEIS A003714): 0, 1, 2, 4, 5, 8, 9, 10... Namba ambazo mfuatano wake wa binary hana 1 zijazo moja kwa moja. Unaunganishwa na mifuatano ya Fibonacci na nadharia ya Zeckendorf.
Mifuatano ya Stanley: Sawa na Moser-de Bruijn kwa base-3—namba ambazo uwasilishaji wake wa base-3 hana 1 (ruhusa tu 0 na 2).
Kamusi Mtandaoni ya Mifuatano ya Namba Za Kamili (OEIS) ina mifuatano ya mamilioni. Tafuta maneno kama "msingi wa kuongeza," "seti ya kubadilisha jumla," au "nguvu tofauti" kupata mifuatano inayohusiana. Mifuatano ya Moser-de Bruijn mwenyewe ni A000695 katika hifadhi ya OEIS.
Leo Moser (1921-1970) na Nicolaas Govert de Bruijn (1918-2012) wote walitoa michango muhimu katika mathematiki, ingawa walikuja kutoka mandhari tofauti. Moser, mwanamathematiki wa Austria-Canada, alishughulika sana katika nadharia ya namba, combinatorics, na jiometria—unaweza kumjua kwa sababu ya msimamo wa Erdős–Moser. De Bruijn, mwanamathematiki wa Uholanzi, aliacha alama yake katika combinatorics, nadharia ya grafu, na sayansi ya kompyuta. Mifuatano yake ya de Bruijn (tofauti na hii) ni muhimu sana katika nadharia ya coding na bado inatumika sana leo.
Mfuatano wao wa mshahara ulijitokeza miaka ya 1960 wakati wa uchunguzi wa nadharia ya namba ya ziada. Wanamathematiki walikuwa wanauliza: ni makundi gani ya namba ambapo unaweza kuwasilisha namba zingine kwa njia ya ziada? Nguvu za 4 zilitokea kuwa kundi moja kama hilo, na mfuatano wa Moser-de Bruijn unachukua jumla zote ambazo unaweza kutengeneza.
Mfuatano huu uko ndani ya utafiti wa kina wa msingi wa ziada—makundi ya namba ambayo yanaweza kujenga namba zingine kupitia ziada. Baadhi ya msingi huu unakubali uwasilishaji wa kipekee (kama nguvu za 4), wakati wengine wasivyo. Kuelewa ni makundi gani yanayo sifa zipi bado ni eneo la utafiti muhimu katika nadharia ya namba ya ziada.
Utakuta mfuatano huu kama A000695 katika OEIS, ambapo wanamathematiki wamekusanya uhusiano wake na uwasilishaji wa binary, mifuatano ya quaternary (msingi-4), na sifa za combinatorics. Sayansi ya kompyuta ya kisasa imeipata matumizi mapya, haswa katika algoritmu zinazohusiana na kubadilisha vipimo na usimbaji wa muundo wa data ya thara.
Je, ungependa kutekeleza kizalishi cha mfuatano wa Moser-de Bruijn mwenyewe? Hapa kuna utekelezaji bora katika lugha za programu zinazotumiwa sana. Kila mfano unahusisha kizalishi cha mfuatano na kazi ya kupima uanachama.
1def moser_de_bruijn(n):
2 """Zalia vipimo vya kwanza vya n vya mfuatano wa Moser-de Bruijn."""
3 sequence = []
4 for i in range(n):
5 term = 0
6 power = 1
7 temp = i
8 while temp > 0:
9 if temp & 1: # Angalia ikiwa bit ya chini kabisa ni 1
10 term += power
11 power *= 4
12 temp >>= 1 # Sogeza kulia ili angalia bit inayofuata
13 sequence.append(term)
14 return sequence
15
16# Mfano wa matumizi:
17terms = moser_de_bruijn(20)
18print("Vipimo 20 vya kwanza vya mfuatano wa Moser-de Bruijn:")
19print(terms)
20# Matokeo: [0, 1, 4, 5, 16, 17, 20, 21, 64, 65, 68, 69, 80, 81, 84, 85, 256, 257, 260, 261]
21
22def is_moser_de_bruijn(num):
23 """Angalia ikiwa namba ipo katika mfuatano wa Moser-de Bruijn."""
24 while num > 0:
25 digit = num % 4
26 if digit > 1:
27 return False
28 num //= 4
29 return True
30
31# Angalia ikiwa 21 ipo katika mfuatano
32print(f"Je, 21 ipo katika mfuatano? {is_moser_de_bruijn(21)}") # Kweli
33print(f"Je, 22 ipo katika mfuatano? {is_moser_de_bruijn(22)}") # Sikweli
341function moserDeBruijn(n) {
2 const sequence = [];
3 for (let i = 0; i < n; i++) {
4 let term = 0;
5 let power = 1;
6 let temp = i;
7 while (temp > 0) {
8 if (temp & 1) { // Angalia ikiwa bit ya chini kabisa ni 1
9 term += power;
10 }
11 power *= 4;
12 temp >>= 1; // Sogeza kulia ili angalia bit inayofuata
13 }
14 sequence.push(term);
15 }
16 return sequence;
17}
18
19// Mfano wa matumizi:
20const terms = moserDeBruijn(20);
21console.log("Vipimo 20 vya kwanza vya mfuatano wa Moser-de Bruijn:");
22console.log(terms);
23// Matokeo: [0, 1, 4, 5, 16, 17, 20, 21, 64, 65, 68, 69, 80, 81, 84, 85, 256, 257, 260, 261]
24
25function isMoserDeBruijn(num) {
26 while (num > 0) {
27 const digit = num % 4;
28 if (digit > 1) {
29 return false;
30 }
31 num = Math.floor(num / 4);
32 }
33 return true;
34}
35
36// Angalia namba maalum
37console.log(`Je, 21 ipo katika mfuatano? ${isMoserDeBruijn(21)}`); // kweli
38console.log(`Je, 22 ipo katika mfuatano? ${isMoserDeBruijn(22)}`); // sikweli
391import java.util.ArrayList;
2import java.util.List;
3
4public class MoserDeBruijnGenerator {
5
6 public static List<Integer> generateSequence(int n) {
7 List<Integer> sequence = new ArrayList<>();
8 for (int i = 0; i < n; i++) {
9 int term = 0;
10 int power = 1;
11 int temp = i;
12 while (temp > 0) {
13 if ((temp & 1) == 1) { // Angalia ikiwa bit ya chini kabisa ni 1
14 term += power;
15 }
16 power *= 4;
17 temp >>= 1; // Sogeza kulia ili angalia bit inayofuata
18 }
19 sequence.add(term);
20 }
21 return sequence;
22 }
23
24 public static boolean isMoserDeBruijn(int num) {
25 while (num > 0) {
26 int digit = num % 4;
27 if (digit > 1) {
28 return false;
29 }
30 num /= 4;
31 }
32 return true;
33 }
34
35 public static void main(String[] args) {
36 List<Integer> terms = generateSequence(20);
37 System.out.println("Vipimo 20 vya kwanza vya mfuatano wa Moser-de Bruijn:");
38 System.out.println(terms);
39
40 System.out.println("Je, 21 ipo katika mfuatano? " + isMoserDeBruijn(21)); // kweli
41 System.out.println("Je, 22 ipo katika mfuatano? " + isMoserDeBruijn(22)); // sikweli
42 }
43}
441#include <iostream>
2#include <vector>
3
4std::vector<int> moserDeBruijn(int n) {
5 std::vector<int> sequence;
6 for (int i = 0; i < n; i++) {
7 int term = 0;
8 int power = 1;
9 int temp = i;
10 while (temp > 0) {
11 if (temp & 1) { // Angalia ikiwa bit ya chini kabisa ni 1
12 term += power;
13 }
14 power *= 4;
15 temp >>= 1; // Sogeza kulia ili angalia bit inayofuata
16 }
17 sequence.push_back(term);
18 }
19 return sequence;
20}
21
22bool isMoserDeBruijn(int num) {
23 while (num > 0) {
24 int digit = num % 4;
25 if (digit > 1) {
26 return false;
27 }
28 num /= 4;
29 }
30 return true;
31}
32
33int main() {
34 std::vector<int> terms = moserDeBruijn(20);
35 std::cout << "Vipimo 20 vya kwanza vya mfuatano wa Moser-de Bruijn:" << std::endl;
36 for (int term : terms) {
37 std::cout << term << " ";
38 }
39 std::cout << std::endl;
40
41 std::cout << "Je, 21 ipo katika mfuatano? " << (isMoserDeBruijn(21) ? "kweli" : "sikweli") << std::endl;
42 std::cout << "Je, 22 ipo katika mfuatano? " << (isMoserDeBruijn(22) ? "kweli" : "sikweli") << std::endl;
43
44 return 0;
45}
46Utekelezaji wote hufuata mtindo sawa: tumia operesheni za bitwise kusoma uwasilishaji wa binary ya kielezo, kisha kujenga jumla ya sawa ya nguvu za 4. Kazi za kupima uanachama hutumia mbinu ya base-4 - kuchunguza ikiwa tarakimu zimerudishwa tu kwa 0 na 1.
Kwa upande wa utendaji, haya utekelezaji ni ya haraka sana. Kina mchanganyiko wa muda wa O(n × log n) kwa kuzalisha vipimo vya n, kwa sababu kila kipimo kinahitaji kuchunguza O(log i) bits. Kupima uanachama wa namba moja ni O(log N) ambapo N ni namba inayoangaliwa.
Jedwali hapo chini inaonyesha masharti ya kwanza 32 pamoja na uchambuzi kamili. Angalia jinsi uwasilishaji wa kima-4 unavyoshikilia tu 0 na 1, na jinsi ya uchambuzi unavyounganisha moja kwa moja kwenye viashiria vya binary:
| Kiashiria | Sharti | Uchambuzi | Kima-4 |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 1 | 1 | 4⁰ | 1 |
| 2 | 4 | 4¹ | 10 |
| 3 | 5 | 4¹ + 4⁰ | 11 |
| 4 | 16 | 4² | 100 |
| 5 | 17 | 4² + 4⁰ | 101 |
| 6 | 20 | 4² + 4¹ | 110 |
| 7 | 21 | 4² + 4¹ + 4⁰ | 111 |
| 8 | 64 | 4³ | 1000 |
| 9 | 65 | 4³ + 4⁰ | 1001 |
| 10 | 68 | 4³ + 4¹ | 1010 |
| 11 | 69 | 4³ + 4¹ + 4⁰ | 1011 |
| 12 | 80 | 4³ + 4² | 1100 |
| 13 | 81 | 4³ + 4² + 4⁰ | 1101 |
| 14 | 84 | 4³ + 4² + 4¹ | 1110 |
| 15 | 85 | 4³ + 4² + 4¹ + 4⁰ | 1111 |
| 16 | 256 | 4⁴ | 10000 |
| 17 | 257 | 4⁴ + 4⁰ | 10001 |
| 18 | 260 | 4⁴ + 4¹ | 10010 |
| 19 | 261 | 4⁴ + 4¹ + 4⁰ | 10011 |
| 20 | 272 | 4⁴ + 4² | 10100 |
| 21 | 273 | 4⁴ + 4² + 4⁰ | 10101 |
| 22 | 276 | 4⁴ + 4² + 4¹ | 10110 |
| 23 | 277 | 4⁴ + 4² + 4¹ + 4⁰ | 10111 |
| 24 | 320 | 4⁴ + 4³ | 11000 |
| 25 | 321 | 4⁴ + 4³ + 4⁰ | 11001 |
| 26 | 324 | 4⁴ + 4³ + 4¹ | 11010 |
| 27 | 325 | 4⁴ + 4³ + 4¹ + 4⁰ | 11011 |
| 28 | 336 | 4⁴ + 4³ + 4² | 11100 |
| 29 | 337 | 4⁴ + 4³ + 4² + 4⁰ | 11101 |
| 30 | 340 | 4⁴ + 4³ + 4² + 4¹ | 11110 |
| 31 | 341 | 4⁴ + 4³ + 4² + 4¹ + 4⁰ | 11111 |
Tuichambue sharti 21 kikamilifu:
Unaona mtindo? Kiashiria cha binary (111) kinaunganisha moja kwa moja ni zipi za nguvu za 4 za kuzingatiwa. Kila "1" ya bit inakujulisha ni ipi ya nguvu ya 4 ya kuingiza.
Mfuatano unakua kwa kasi ya kubadilishana—sharti la n ni karibu na 4^(log₂(n)). Hii inamaanisha nini kwa vitendo?
Wakati namba zinaongezeka, mfuatano unakuwa sparsi zaidi. Unaskiza zaidi na zaidi ya namba za kati. Licha ya ukosefu huu, mfuatano una masharti ya kuendelea milele—hautakuwa na mwisho wa kukua.
OEIS A000695 - Mfuatano wa Moser-de Bruijn. Kamusi Mtandaoni ya Mifuatano ya Nambari Kamili. Data ya kina na sifa za mfuatano.
De Bruijn, N. G. "Kuhusu Msingi wa Seti ya Nambari Kamili." Machapisho ya Mathematiki Debrecen, vol. 1, 1950, uk. 232-242. Makala ya msingi inayoanzisha sifa muhimu za msingi za ziada.
Moser, Leo. "Matumizi ya Mfuatano wa Uzalishaji." Jarida la Mathematiki, vol. 35, no. 1, 1962, uk. 37-38. Kazi ya mapema inayochunguza mifuatano ya kuzalisha.
Stolarsky, Kenneth B. "Jumla za Nguvu na Exponent za Jumla zaDigiti Zinazohusiana na Usawa wa Koefu ya Binomial." Jarida la SIAM la Mathematiki Iliyotumika, vol. 32, no. 4, 1977, uk. 717-730. Inachunguza sifa za jumla za digiti zinazohusiana na mifuatano kama vile Moser-de Bruijn.
Allouche, Jean-Paul, na Jeffrey Shallit. Mifuatano Ya Otomatiki: Nadharia, Matumizi, Upanuzi. Chapa ya Chuo Kikuu cha Cambridge, 2003. Sura inayofurahisha mifuatano ya otomatiki ikiwa ni pamoja na unganisho wa mfuatano wa Moser-de Bruijn.
Seti Zisizozidishwa - Wikipedia. Usuli wa muktadha wa pana wa nadharia ya nambari za ziada.
Msingi wa Ziada - Wikipedia. Mapitio ya seti ambazo zinaweza kuwasilisha nambari kamili kama jumla.
Sequence hii ina applications kadhaa: utafiti wa nadharia ya namba ukiachunguza msingi wa ziada, kazi ya kombinatoriki juu ya seti za bure-jumla, elimu ya sayansi ya kompyuta (haswa kwa kufundisha operesheni za bitwise na algoritmu za ufanisi), na uchambuzi wa maudhui ya hisabati. Pia ni zana ya kufundishia nzuri ya kuelewa jinsi vipimo tofauti vya namba vinavyohusiana na vyovyote.
Chukua kila kiashiria n kuanzia 0, ubadilishe kwenye binary, kisha ubadilishe kila bit ya "1" na nguvu ya 4 husika. Kwa mfano, kiashiria 5 kina uwasilishaji wa binary 101, kwa hivyo unakokotoa 4² + 4⁰ = 16 + 1 = 17. Hiyo ndiyo sharti ya 5 (kuhesabu kuanzia kiashiria 0).
Kila namba katika sequence ina tabia maalum: uwasilishaji wake wa base-4 una tu 0 na 1 - kamwe 2 au 3. Hii inamaanisha unaweza kujenga kila sharti kwa kuongeza nguvu za 4 ambapo kila nguvu inatokea mara moja tu. Ni kama binary, lakini kwa kutumia nguvu za 4 badala ya nguvu za 2.
Ubadilishe namba yako kwenye base 4 uangalie tarakimu. Ikiwa unaona tu 0 na 1, iko kwenye sequence. Ikiwa na tarakimu ya 2 au 3, haijaruhusika. Kwa mfano, 21 kwenye base 4 ni 111 (zote 1 na 0), kwa hivyo iko ndani. Lakini 22 kwenye base 4 ni 112 (ina 2), kwa hivyo haijaruhusika.
Sharti la n-th M(n) kufuata formula hii: M(n) = Σ(b_i × 4^i), ambapo b_i inawakilisha tarakimu za binary za n. Kwa lugha rahisi: andika n kwa binary, kisha kwa kila nafasi yenye 1, ongeza nguvu ya 4 husika.
Ndiyo, itaendelea milele. Kuna maudhui isiyo na mwisho katika sequence ya Moser-de Bruijn. Hata hivyo, ukilinganisha, sequence inakuwa ya visivyo na manufaa - unaskiza zaidi na zaidi ya namba za kawaida kati ya wanachama wa sequence.
Sequence za binary (jumla ya nguvu za 2) zinaweza kuwasilisha kila namba isiyo ya chini - hiyo ndiyo uwasilishaji wa binary unafanya. Sequence ya Moser-de Bruijn inatumia nguvu za 4 badala yake, ambayo inazalisha seti ya visivyo na manufaa. Wengi wa namba hawaonekani kwenye sequence ya Moser-de Bruijn.
Leo Moser (1921-1970), mhisabati wa Austria-Kanada, na Nicolaas Govert de Bruijn (1918-2012), mhisabati wa Uholanzi, wote waliichunguza sequence hii kwa undani wakati wa miaka ya 1960 kama sehemu ya utafiti wa nadharia ya namba za ziada. Sequence ina majina yao.
Jenereta hii inakimbia kabisa katika kivinjari chako—hakuna usanidi, hakuna usajili, hakuna kusubiri. Iwe wewe ni mwanafunzi anayejifunza kuhusu mifumo ya nambari, mtafiti anayechunguza msingi wa ziada, au tu unayejivunia kielimisha, unaweza kuzalisha vipimo mara moja na kuona mifumo yenyewe. Jaribu kuzalisha viwango tofauti ili ufuatilie jinsi mfuatano unavyokua na zipi nambari zinazoingizwa.
Gundua zana zaidi ambazo zinaweza kuwa na manufaa kwa mtiririko wako wa kazi