Rumah pembangunan bahagian belakang Tutorial C#.Net C#1,3,5,7排列组合(3位)非递归

C#1,3,5,7排列组合(3位)非递归

Dec 20, 2016 am 09:11 AM
.net 3

//深度优先 
类节目 
    { 
        静态无效的主要(字串[] args) 
        { 
            INT []号= INT新[] {1,3,5,7}; 
            列表数据=新名单(); 
            堆栈的OpenStack =新的堆栈(); 
            树根=新树(); 
            树父=根; 
            而(真) 
            { 
              
                如果(parent.GetDeep()== 4) 
                { 
                    parent.printf(); 
                    
                } 
                其他 
                { 
                   VAR tempSon = number.ToList(); 
                   的foreach(在tempSon VAR项) 
                   { 
                       )树节点=新树(; 
                       Node.NodeData =项目; 
                       Node.Parent =父母; 
                       openStack.Push(节点); 
                   } 
                } 
               如果(openStack.Count == 0)[颜色= darkred] [/ COLOR] 
                    突破; 
               变种的ItemData = openStack.Pop(); 
               父=的ItemData; 

            } 
            System.Console.Read(); 

        } 
        公共静态无效的printf(列表数据) 
        { 
            串D ="英寸; 
            data.ForEach(p值= D 1和D = D + P); 
            的System.Console.WriteLine(D); 
        } 
    } 
    类树 
    { 
        公共树父; 
        公众诠释NODEDATA; 
        公开名单的儿子=新名单(); 
        公众诠释GetDeep() 
        { 
            INT I = 0; 
              VAR P =这一点; 
            而(真) 
            { 
                如果(P == NULL) 
                { 
                    回报我; 
                } 
                否则 
                { 
                    P = p.Parent; 
                    我++; 
                
                } 
            
            } 
        
        } 
        公共无效的printf() 
        { 
            字符串PF ="英寸; 
            VAR P =这一点; 
            而(真) 
            { 
                如果(P == NULL) 
                { 
                    的System.Console.WriteLine(PF); 
                    返回; 
                } 
                否则 
                { 
                    如果(p.NodeData!= 0) 
                    { 
                        PF = p.NodeData + PF; 
                    } 
                    P = p.Parent; 
                } 
            } 
        
        } 
    } 
//广度优先 
类节目 
    { 
        静态无效的主要(字串[] args) 
        { 
            INT []号= INT新[] {1,3}; 
            名单的数据=新的List 的(); 
            堆栈<树>的OpenStack =新的堆栈<树>(); 
            队列<树> openQueue =新队列<树>(); 

            树根=新树(); 
            树父=根; 
            而(真) 
            { 
              
                如果(parent.GetDeep()== 4) 
                { 
                    parent.printf(); 
                    
                } 
                其他 
                { 
                   VAR tempSon = number.ToList(); 
                   的foreach(在tempSon VAR项) 
                   { 
                       )树节点=新树(; 
                       Node.NodeData =项目; 
                       Node.Parent =父母; 
                      // openStack.Push(节点); 
                       openQueue.Enqueue(节点); 
                   } 
                } 
                如果(openQueue.Count == 0)//如果(openStack.Count == 0) 
                    打破; 
               变种的ItemData = openQueue.Dequeue(); //openStack.Pop(); 
               父=的ItemData; 


            } 
            System.Console.Read(); 


        } 

        公共静态无效的printf(名单的数据) 
        { 
            串D =“”; 
            data.ForEach(P => D = D + P); 
            的System.Console.WriteLine(D); 
        } 

    } 
    类树 
    { 
        公共树父; 
        公众诠释NODEDATA; 
        公开名单<树>儿子=新的List <树>(); 
        公众诠释GetDeep() 
        { 
            INT I = 0; 
              VAR P =这一点; 
            而(真) 
            { 
                如果(P == NULL) 
                { 
                    回报我; 
                } 
                否则 
                { 
                    P = p.Parent; 
                    我++; 
                
                } 
            
            } 
        
        } 
        公共无效的printf() 
        { 
            字符串PF =“”; 
            VAR P =这一点; 
            而(真) 
            { 
                如果(P == NULL) 
                { 
                    的System.Console.WriteLine(PF); 
                    返回; 
                } 
                否则 
                { 
                    如果(p.NodeData!= 0) 
                    { 
                        PF = p.NodeData + PF; 
                    } 
                    P = p.Parent; 
                } 

            } 
        
        } 
    } 

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah prospek pekerjaan C#? Apakah prospek pekerjaan C#? Oct 19, 2023 am 11:02 AM

Sama ada anda seorang pemula atau profesional yang berpengalaman, menguasai C# akan membuka jalan untuk kerjaya anda.

Kongsi beberapa rangka kerja projek berkaitan AI dan LLM sumber terbuka .NET Kongsi beberapa rangka kerja projek berkaitan AI dan LLM sumber terbuka .NET May 06, 2024 pm 04:43 PM

Perkembangan teknologi kecerdasan buatan (AI) sedang giat dijalankan hari ini, dan ia telah menunjukkan potensi dan pengaruh yang besar dalam pelbagai bidang. Hari ini Dayao akan berkongsi dengan anda 4 rangka kerja projek berkaitan LLM model AI sumber terbuka .NET, dengan harapan dapat memberi anda sedikit rujukan. https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.mdSemanticKernelSemanticKernel ialah kit pembangunan perisian sumber terbuka (SDK) yang direka untuk menyepadukan model bahasa besar (LLM) seperti OpenAI, Azure

blendOS 3: Sistem pengedaran tidak berubah akan dikeluarkan, menyokong sehingga 9 pengedaran Linux blendOS 3: Sistem pengedaran tidak berubah akan dikeluarkan, menyokong sehingga 9 pengedaran Linux Jun 06, 2023 pm 05:11 PM

Menurut berita pada 6 Jun, pemaju RudraSaraswat mengumumkan sistem pengedaran tidak berubah yang mereka bangunkan, blendOS3, dan berjanji untuk membawa fungsi dan ciri baharu kepada pengguna. Sistem ini akan menyokong sehingga sembilan pengedaran Linux dan menyediakan cara baharu untuk mengemas kini tanpa menggunakan repositori pakej. Mengikut pemahaman editor, blendOS3 ialah sistem pengedaran yang mengintegrasikan ArchLinux, FedoraLinux dan Ubuntu. Seawal blendOS2 dikeluarkan pada April tahun ini, sistem itu memperkenalkan teknologi WayDroid, membolehkan pengguna menjalankan aplikasi Android pada sistem. Salah satu perubahan terbesar yang dibawa oleh blendOS3 ialah kemas kini serba baharu

Teknologi pengoptimuman prestasi .NET untuk pembangun Teknologi pengoptimuman prestasi .NET untuk pembangun Sep 12, 2023 am 10:43 AM

Jika anda seorang pembangun .NET, anda mesti sedar tentang kepentingan mengoptimumkan fungsi dan prestasi dalam menyampaikan perisian berkualiti tinggi. Dengan menggunakan pakar sumber yang disediakan dan mengurangkan masa memuatkan tapak web, anda bukan sahaja mencipta pengalaman yang menyenangkan untuk pengguna anda tetapi juga mengurangkan kos infrastruktur.

Perbezaan prestasi antara rangka kerja Java dan rangka kerja .NET Perbezaan prestasi antara rangka kerja Java dan rangka kerja .NET Jun 03, 2024 am 09:19 AM

Dari segi pemprosesan permintaan selaras tinggi, .NETASP.NETCoreWebAPI berprestasi lebih baik daripada JavaSpringMVC Sebabnya termasuk: Kompilasi awal AOT, yang mengurangkan masa permulaan pengurusan memori, di mana pembangun bertanggungjawab untuk memperuntukkan dan melepaskan memori objek.

C# .NET Soalan & Jawapan Wawancara: Tahap kepakaran anda C# .NET Soalan & Jawapan Wawancara: Tahap kepakaran anda Apr 07, 2025 am 12:01 AM

C#.NET Soalan dan jawapan wawancara termasuk pengetahuan asas, konsep teras, dan penggunaan lanjutan. 1) Pengetahuan asas: C# adalah bahasa berorientasikan objek yang dibangunkan oleh Microsoft dan digunakan terutamanya dalam rangka .NET. 2) Konsep teras: Delegasi dan peristiwa membolehkan kaedah mengikat dinamik, dan LINQ menyediakan fungsi pertanyaan yang kuat. 3) Penggunaan Lanjutan: Pengaturcaraan Asynchronous meningkatkan respons, dan pokok ekspresi digunakan untuk pembinaan kod dinamik.

Advanced C# .NET Tutorial: Ace Wawancara Pemaju Kanan Anda Seterusnya Advanced C# .NET Tutorial: Ace Wawancara Pemaju Kanan Anda Seterusnya Apr 08, 2025 am 12:06 AM

Temu bual dengan pemaju kanan C# memerlukan menguasai pengetahuan teras seperti pengaturcaraan asynchronous, LINQ, dan prinsip kerja dalaman Rangka .NET. 1. Pengaturcaraan Asynchronous memudahkan operasi melalui async dan menunggu untuk meningkatkan respons aplikasi. 2.Linq mengendalikan data dalam gaya SQL dan perhatikan prestasi. 3. CLR kerangka bersih menguruskan ingatan, dan pengumpulan sampah perlu digunakan dengan berhati -hati.

C# .NET: Meneroka Konsep Teras dan Asas Pengaturcaraan C# .NET: Meneroka Konsep Teras dan Asas Pengaturcaraan Apr 10, 2025 am 09:32 AM

C# adalah bahasa pengaturcaraan yang berorientasikan objek moden yang dibangunkan oleh Microsoft dan sebagai sebahagian daripada Rangka Kerja .NET. 1.C# menyokong pengaturcaraan berorientasikan objek (OOP), termasuk enkapsulasi, warisan dan polimorfisme. 2. Pengaturcaraan Asynchronous dalam C# dilaksanakan melalui Async dan menunggu kata kunci untuk meningkatkan respons aplikasi. 3. Gunakan LINQ untuk memproses koleksi data dengan ringkas. 4. Kesilapan umum termasuk pengecualian rujukan null dan pengecualian indeks luar. Kemahiran penyahpepijatan termasuk menggunakan debugger dan pengendalian pengecualian. 5. Pengoptimuman Prestasi termasuk menggunakan StringBuilder dan mengelakkan pembungkusan yang tidak perlu dan unboxing.

See all articles