Advertisement
FHRL

LinkedVector 0.5.1

Aug 24th, 2020 (edited)
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.41 KB | None | 0 0
  1. /*
  2.  * Created by SharpDevelop.
  3.  * User: fhrl0
  4.  * Date: 21/08/2020
  5.  * Time: 10:28 p. m.
  6.  * Vertion: 0.5.1
  7.  * To change this template use Tools | Options | Coding | Edit Standard Headers.
  8.  */
  9. using System;
  10. using System.Collections.Generic;
  11.  
  12. namespace Test{
  13.     /// <summary>
  14.     /// You do the right thing!.
  15.     /// Description of LinkedVector.
  16.     /// </summary>
  17.     public class LinkedVector<T>{
  18.         private T Node;
  19.         private LinkedList<LinkedVector<T>>ListVector;
  20.         public LinkedVector(){
  21.             this.Constructor(this)
  22.                 .Node=default(T);
  23.         }
  24.         public LinkedVector(T Header){
  25.             this.Constructor(this)
  26.                 .Node=Header;
  27.         }
  28.         private LinkedVector<T>Constructor(LinkedVector<T>InitialVector){
  29.             return (this.ListVector=new LinkedList<LinkedVector<T>>())
  30.                         .AddFirst(InitialVector)
  31.                         .Value;
  32.         }
  33.         public LinkedVector(T Header,LinkedList<T>Coordinades){//(x,y)->end,(x)->end,(x)->end,(x,y,z)->end
  34.             if(!Coordinades.Count.Equals(0)){
  35.                 LinkedVector<T>LastVector=this;
  36.                 foreach(T Item in Coordinades){
  37.                     LastVector=(LastVector.ListVector=new LinkedList<LinkedVector<T>>())
  38.                                           .AddFirst(new LinkedVector<T>(Item)).Value;
  39.                 }
  40.                 LastVector.Constructor(this);
  41.                 this.Node=Header;
  42.             }else{
  43.                 this.Constructor(this)
  44.                     .Node=Header;
  45.             }
  46.         }
  47.         ~LinkedVector(){
  48.             ListVector.Clear();
  49.             ListVector=default(LinkedList<LinkedVector<T>>);//delete
  50.             Node=default(T);//delete
  51.         }
  52.     }
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement