top of page

Stack

Maqaalkan waxa aad ku baran doontaa:

1. Waa maxay stack?

2. Shaqooyinka lagu dul qabto.

3. Sida loo hir galiyo.


Maqaalkan kuma xusi doonno Time Complexity iyo space Complexity mid koodna.

Stack waxa ay ka mid tahay Linear DS ka taas oo raacda hab gaara oo loo yaqaan LIFO( Last In First Out) ama FILO(First In Last Out).Tan oo muujinaysa in ay jirto tartiib la raaco.



2. Shaqooyinka lagu dul qabto:

Halkan code snippets aan adeegsanayaa waxa u ku qoran yahay java se luuqadda kale sida Dart, Python waxa aad ka helaysaa github ka.

1. Push: oo ah in lagu daro shay xagga sare ee stack[bottom to top]

public void push(int item) {
    if (isFull())
        throw new StackOverflowError("Stack is OverFlow.");

    items[topOfStack++] = item;
}

2. Pop: oo ah in shay laga saaro/tuuro xagga sare ee stack[top to bottom]

public int pop() {
    if (isEmpty())
        throw new StackUnderflowError("Stack is UnderFlow.");

    return items[--topOfStack];
}

3. Peek: oo ah in la ogaado shayga ugu sarreeya stack[top item]

 public int peek() {
    if (isEmpty())
        throw new StackUnderflowError("Stack is UnderFlow.");

    return items[topOfStack - 1];
}

Waxa kale oo jira shaqo caawiyayaal kale oo macquula in stack-ta loo adeegsado oo ah kuwan hoos ku xusan iyo qaar kale ood githubka ka heli karto.


1. isFull: oo ah in la hubiyo in stack-tu buuxdo iyo in kale. Haddii ay buuxdo waxa uu soo celiyaa run[true]. Haddii kalena been[false]

 public boolean isFull() {

    return topOfStack == items.length;
}

2. isEmpty: oo ah in la hubiyo in stack-tu madhan tahay iyo in kale. Haddii ay madhan tahay waxa uu soo celiyaa run[true]. Haddii kalena been[false]

  public boolean isEmpty() {
  
    return topOfStack == 0;
}

3. Size: oo ah in la ogaado cabbirka stack-ta; kolba inta shay ee ku jirta.

 public int size() {

    return topOfStack;
}

Marka nolosha caadiga ah la joogo stack-ta meelo badan ayaa loo adeegsadaa. Sida weelka oo bileedhada waxa aan og nahay in la is wada dulsaaro , marka la kala gurayana kan u sareeya loo hor mariyo.Bal buugta iyaga ka waran?

'back' button-ka ka waran aan maalin kasta adeegsanno sida in aad browser-ka bayj ka furto deedna ku laabato kii aad ka timi oo la mid ah in aad Pop ku samaysay stack-ta. Redo/undo ka waran oo aan maalin kasta adeegsanno.

Waxa ugu mudan ee stack loo adeegsadaa waa in 'history' lagu kaydiyo taas oo dib loo raaci karo. Browser kasta waxa uu leeyahay History tab kaas ood ka heli karto waxa aad hore u soo qabatay. Design tools ayaa iyana aad u adeegsada.


Stack waxa lagu hir galin karaa:
  1. Array

  2. LinkedList

Halkan waxa aan adeegsan doonnaa Array/List , laakiin xor baad u tahay in aad adeegsato LinkedList.

Maxaad ka baran kartaa maqaalkan:
  1. Code nadiifa oo si fiican u qoran isla jeerkaana aan soo noq noqosho la hayn[Clean coding].

  2. Magac bixin fiican oo mid kastaa u jeedkiisu cad yahay isla markaana raaca hab bixinta ee luuqadkasta u gaara [proper naming convention]

  3. Code is haysta oo si wanaagsan xidhiidh u leh[Code Cohesion].

Waxa ii farxad ah in aad ilaa halkan soo gaartay ood dhammaysay maqaalkan. Waxa kale oo dhiiri galin ii ah in aad saaxiibbadaada waxbarashada iyo shaqada la wadaagto. Waxa kale oon kaa codsanayaa in aad Post ku samays adiga oo magacayga ku xusaya!

Codekan oo dhammaystiranna waxa aad ka helaysaa:


Kulankale mahadsanid ♥️

257 views0 comments

Related Posts

See All

Queue

bottom of page