MindMap Gallery Data Structure Chapter 2-Linear Table
Chapter 2 of "Data Structure" - sorting out the knowledge of linear tables, including its definition and basic operations, sequential representation, and chain representation.
Edited at 2022-11-23 16:06:11Mappa mentale per l’analisi del controllo della gestione del portata di progetto. Tre sezioni principali: 1. WBS Scope Breakdown – scomposizione gerarchica del lavoro con dettaglio dello Scopo del progetto. 2. Scope Boundary / Exclusions – definizione chiara dei confini del progetto e di ciò che è escluso per evitare scope creep. Strumento ideale per project manager e team di controllo per mantenere allineamento e ridurre rischi.
Questo template, ideato con EdrawMind, è un modello completo per il miglioramento continuo del sistema di gestione della qualità, con una descrizione di circa 500 parole. È strutturato come un diagramma a lisca di pesce, strumento efficace per analizzare le cause principali dei problemi di qualità e definire le leve di controllo necessarie per risolverli. Il processo è organizzato in quattro fasi chiave: la prima è lo standard e la pianificazione, dove si definiscono gli obiettivi di qualità, i criteri di accettazione, i requisiti di prova e le porte di qualità (Quality Gate). La seconda fase analizza i processi e le porte di controllo, per garantire che ogni passaggio del lavoro segua i standard stabiliti. La terza fase riguarda l’esecuzione QA/QC, con la definizione di metodi di prova e ispezione, nonché regole per la gestione dei difetti e delle non conformità. L’ultima fase è il miglioramento e le azioni correttive e preventive (CAPA), insieme a una catena di audit per monitorare l’efficacia delle misure adottate. In basso, una tabella "Quality Gate" permette di tracciare ogni punto di controllo, con criteri specifici, metodi di prova, proprietario e stato di avanzamento. Grazie alla visualizzazione chiara e intuitiva di EdrawMind, questo strumento aiuta il team a identificare le cause root dei problemi di qualità, implementare azioni efficaci e mantenere un ciclo di miglioramento continuo, garantendo la qualità finale del prodotto o servizio.
Questo template, creato con EdrawMind, è un modello di piano di comunicazione ottimizzato, con una descrizione di circa 500 parole. È uno strumento chiave per evitare incomprensioni tra stakeholder, garantire la trasparenza e mantenere il team allineato agli obiettivi del progetto. Il modello è composto da tre elementi fondamentali e interconnessi: la matrice di comunicazione, la cadenza timeline e le regole di comunicazione/SLA. La matrice di comunicazione è una tabella dettagliata dove per ogni pubblico o stakeholder, si definisce il tipo di informazioni da condividere, lo scopo della comunicazione, il canale da utilizzare (email, riunioni, piattaforme di progetto), la frequenza, il proprietario responsabile, il formato e il percorso di escalazione in caso di problemi. La cadenza timeline è una linea temporale che definisce le scadenze delle comunicazioni chiave, garantendo che le informazioni siano condivise in momento opportuno e non si verifichino ritardi o omissioni. Le regole di comunicazione e gli accordi sul livello di servizio (SLA) definiscono le norme formali della comunicazione, come i tempi di risposta, il tono da adottare e le responsabilità di ciascun membro del team. Grazie alla struttura visuale di EdrawMind, questo template permette di pianificare la comunicazione in modo strategico, trasparente e efficiente, riducendo i rischi di cattiva informazione, migliorando la collaborazione e garantendo che tutti gli stakeholder siano informati e coinvolti nel progetto.
Mappa mentale per l’analisi del controllo della gestione del portata di progetto. Tre sezioni principali: 1. WBS Scope Breakdown – scomposizione gerarchica del lavoro con dettaglio dello Scopo del progetto. 2. Scope Boundary / Exclusions – definizione chiara dei confini del progetto e di ciò che è escluso per evitare scope creep. Strumento ideale per project manager e team di controllo per mantenere allineamento e ridurre rischi.
Questo template, ideato con EdrawMind, è un modello completo per il miglioramento continuo del sistema di gestione della qualità, con una descrizione di circa 500 parole. È strutturato come un diagramma a lisca di pesce, strumento efficace per analizzare le cause principali dei problemi di qualità e definire le leve di controllo necessarie per risolverli. Il processo è organizzato in quattro fasi chiave: la prima è lo standard e la pianificazione, dove si definiscono gli obiettivi di qualità, i criteri di accettazione, i requisiti di prova e le porte di qualità (Quality Gate). La seconda fase analizza i processi e le porte di controllo, per garantire che ogni passaggio del lavoro segua i standard stabiliti. La terza fase riguarda l’esecuzione QA/QC, con la definizione di metodi di prova e ispezione, nonché regole per la gestione dei difetti e delle non conformità. L’ultima fase è il miglioramento e le azioni correttive e preventive (CAPA), insieme a una catena di audit per monitorare l’efficacia delle misure adottate. In basso, una tabella "Quality Gate" permette di tracciare ogni punto di controllo, con criteri specifici, metodi di prova, proprietario e stato di avanzamento. Grazie alla visualizzazione chiara e intuitiva di EdrawMind, questo strumento aiuta il team a identificare le cause root dei problemi di qualità, implementare azioni efficaci e mantenere un ciclo di miglioramento continuo, garantendo la qualità finale del prodotto o servizio.
Questo template, creato con EdrawMind, è un modello di piano di comunicazione ottimizzato, con una descrizione di circa 500 parole. È uno strumento chiave per evitare incomprensioni tra stakeholder, garantire la trasparenza e mantenere il team allineato agli obiettivi del progetto. Il modello è composto da tre elementi fondamentali e interconnessi: la matrice di comunicazione, la cadenza timeline e le regole di comunicazione/SLA. La matrice di comunicazione è una tabella dettagliata dove per ogni pubblico o stakeholder, si definisce il tipo di informazioni da condividere, lo scopo della comunicazione, il canale da utilizzare (email, riunioni, piattaforme di progetto), la frequenza, il proprietario responsabile, il formato e il percorso di escalazione in caso di problemi. La cadenza timeline è una linea temporale che definisce le scadenze delle comunicazioni chiave, garantendo che le informazioni siano condivise in momento opportuno e non si verifichino ritardi o omissioni. Le regole di comunicazione e gli accordi sul livello di servizio (SLA) definiscono le norme formali della comunicazione, come i tempi di risposta, il tono da adottare e le responsabilità di ciascun membro del team. Grazie alla struttura visuale di EdrawMind, questo template permette di pianificare la comunicazione in modo strategico, trasparente e efficiente, riducendo i rischi di cattiva informazione, migliorando la collaborazione e garantendo che tutti gli stakeholder siano informati e coinvolti nel progetto.
linear table
Definition and basic operations
definition
A linear table is a finite sequence of n data elements of the same data type
a1 is the header element
an is the table element
Every element except the first element has one and only one direct predecessor; every element except the last element has one and only one direct successor.
Features
The number of elements in the table is limited
The elements in the table have a logical sequence. The elements in the table have their order.
The elements in the table are all data elements, and each element is a single element
The data types of the elements in the table are all the same, which means that each element occupies the same size of storage space
The elements in the table are abstract, that is, only the logical relationship between the elements is discussed, without considering what the elements actually represent.
Basic operations of linear tables
InitList(&): Initialization list. Construct an empty linear table
Length(L): Find the length of the table. Returns the length of the linear table L, that is, the number of data elements in L
LocateElem(L,e): Find operation by value. Find elements in table L with given key value
GetElem(L,i): Bitwise search operation. Get the value of the element at position i in the table
ListInsert (&L,i,e): Insertion operation. Insert the specified element e at the i-th position in table L
ListDelete(&L,i,&e): Delete operation. Delete the element at the i-th position in the table and use e to return the value of the deleted element
PrintList(L): Output operation. Output all element values of the linear table in sequential order
Empty(L): Empty operation. If the job is an empty table, return true, otherwise return false
DestroyList(&L): Destroy operation. Destroy the linear table and release the memory space occupied by linear table L
sequential representation
definition
The sequential storage of a linear table uses a set of storage units with consecutive addresses to sequentially store the data elements in the linear table, so that two logically adjacent elements are also physically adjacent.
Features
random access
The specified element can be found in time O(1) through the first address and element number.
High storage density, each node only stores data elements
The logical order of elements in a table is the same as their physical order, so insertion and deletion operations require moving a large number of elements
Basic operations
(1) insert
Time complexity: O(n)
(2) delete
Time complexity: O(n)
(3) Find by value (sequential search)
Time complexity: O(n)
chain representation
Definition of singly linked list
Store data elements in a linear table through an arbitrary set of storage units
For each linked list node, in addition to storing the element's own information, it also needs to store a pointer to its successor.
Attach a node before the first node of the singly linked list, called the head node. Its data field does not contain any information, and the pointer points to the first element node of the linear list.
Basic operations of singly linked list
Create a singly linked list using head insertion method
The order of the nodes in the generated linked list is inconsistent with the order of the input data.
Time complexity: O(n)
Create a singly linked list using tail insertion method
Introduce the tail pointer r, which always points to the tail node of the current linked list
Time complexity: O(n)
Find node value by serial number
Time complexity: O(n)
Find table nodes by value
Time complexity: O(n)
Insert node operation
time complexity
Inserting after a given node: O(1)
Otherwise, O(n)
Forward insertion operation
Assume that the node to be inserted is s, and insert it in front of node p: s can be inserted after p first, and then p->data and s->data are exchanged. The time complexity is only O(1)
Delete node operation
Time complexity: O(1)
Extended approach: In order to delete node p, you can first assign the value of its successor node to itself, and then delete the successor node. The time complexity is only O(1)
Find table length operation
Time complexity: O(n)
Double linked list
The time complexity of accessing the predecessor node of a single linked list is O(n). For this reason, a double linked list is introduced. Each node has two pointers, prior and next, pointing to its predecessor and successor nodes respectively.
insert operation
Delete operation
circular linked list
Circular singly linked list
The pointer of the last node in the table is not NULL, but points to the head node.
The rest is the same as singly linked list
Circular doubly linked list
The prior pointer of the head node points to the end node of the list; when the linked list is an empty list, the prior field and next field of the head node are both equal to L
static linked list
Use arrays to describe the linked storage structure of linear lists
The pointer is the relative address of the node (array subscript), also known as the cursor
Use next==-1 as the end mark
Comparison of sequence list and linked list
Access (read and write) methods
Sequence table: can be accessed sequentially or randomly
Linked list: elements can only be accessed sequentially from the head of the list
Logical structure and physical structure
Find, insert and delete element operations
space allocation
Sequential storage is difficult to expand when static storage is allocated; dynamic storage allocation will reduce operating efficiency