÷ºÎÆÄÀÏÀÌ ¿Ã¶ó°¡Áö ¾Ê¾Æ¼¿ä...
¾Æ·¡ Áú¹®ÀÇ ´ëÇÑ °¡»ó ÄÚµåÀÔ´Ï´Ù.
[Áú¹®°ú ´äº¯] - [Áú¹®]LinkedList Áú¹®ÀÔ´Ï´Ù.
//------------------------------------------------------------------------------ // // Image Array Component // // BitmapÀ» ¸Þ¸ð¸®»ó¿¡¼ °ü¸®ÇÔ // // History // 2015.07.20 : °³¹ß ½ÃÀÛ // 2015.07.22 : Standard VCL Library (std)Çü½ÄÀ¸·Î °³¼± // // //------------------------------------------------------------------------------ unit VCL_stdNodes;
interface
uses SysUtils, Classes;
Const cSnID_Nil = -1;
Type TSnID = Integer; TSnNavi = (snvFirst, snvPrev, snvCurrent, snvNext, snvEnd); TSnInsert = (sniInsNone, sniInsBefore, sniInsAfter); TSnPosition = (snpErr, // Not Calc, No Conncted snpSame, // Same Node snpAsc, // Ascending snpDes); // Descending // Node pSnNode = ^TSnNode; TSnNode = Record ID : TSnID; // ID Data : TObject; // Data [ Generic Data Container ] Prev : pSnNode; // Node Next : pSnNode; End; // TstdNodes = class(TComponent) private FStart : pSnNode; // Start Node FCurrent : pSnNode; // Cursor FAutoID : Integer; // Unique ID (Auto Incremental) protected public // Procedure Debug (Strs : TStrings); Procedure Clear; Function Count : Integer; Function AutoID : TSnID; // Procedure Node_Create (Var Node : pSnNode); Function Node_Free (Var Node : pSnNode) : Boolean; // Function Navi (Nav : TSnNavi) : pSnNode; Function Find (ID : TSnID ) : pSnNode; Function FindInx (Data : pSnNode) : Integer; Function Sorted (Src,Tgt : pSnNode) : TSnPosition; overload; Function Sorted (Src,Tgt : TSnID ) : TSnPosition; overload; Function Connected (
|