内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

java和c++的鏈表操作-創(chuàng)新互聯(lián)

java和c++鏈表的表示以及基本操作 c++單鏈表的表示
struct Node{
    int value;  //表示這個(gè)節(jié)點(diǎn)的值
    Node *next; //表示下一個(gè)節(jié)點(diǎn)的指針
}a[200000], *head, *tail;

//定義了20萬個(gè)節(jié)點(diǎn),頭指針和尾指針;
int index = 0;//用來表示當(dāng)前節(jié)點(diǎn)用到了哪里
c++單鏈表的添加
void addFirst(int x){//如果頭指針為空,也就是上面的head為空,則調(diào)用這個(gè)方法
	a[index].value = x;
    head = &a[index];  //因?yàn)閔ead為指針,所以要用地址符號。
    tail = &a[index];
    index++;
}

void addToHead(int x){ //添加在最前面
    a[index].value = x;
    a[index].next = head; //當(dāng)前節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn)修改為頭節(jié)點(diǎn)
    head = &a[index]; //頭節(jié)點(diǎn)修改為當(dāng)前節(jié)點(diǎn)
    index++;
}

void addToTail(int x){//添加在最后面
    a[index].value = x;
    tail->next = &a[index]; //尾巴的下一個(gè)為a[index],因?yàn)閠ail是指針,所以要用箭頭
    tail = &a[index];       //修改尾巴為當(dāng)前節(jié)點(diǎn);
    index++;
    
}

void add(int x, Node node){ //在node節(jié)點(diǎn)后面添加一個(gè)節(jié)點(diǎn)x
    a[index].value = x;
    a[index].next = node.next; //先增加一條線,也就是先讓當(dāng)前節(jié)點(diǎn)指向node的下一個(gè)節(jié)點(diǎn)
    node.next = &a[index];     //在讓node的下一個(gè)為當(dāng)前添加節(jié)點(diǎn)。
}
c++單鏈表的刪除
void delete(Node *node){ //刪除node節(jié)點(diǎn),參數(shù)為Node node 也就是調(diào)用方法時(shí)要用delete(a[i]), 如果為*node,就是delete(&a[i]),此處為*node
    if(head == node){ //如果為頭節(jié)點(diǎn),就不用管之前的
        head = head->next;
    }
    else{
        //先找到刪除節(jié)點(diǎn)的前一個(gè)節(jié)點(diǎn), 可以在結(jié)構(gòu)體里面定義一個(gè)pre指針,這樣可以O(shè)(1)刪除
        //接下來的方法是遍歷方法找到該節(jié)點(diǎn)的前一個(gè),復(fù)雜度為O(n);
        Node *h = head;
        while(h != null && h ->next != node){
            h = h ->next
        }
        h->next = h->next->next;//直接讓當(dāng)前節(jié)點(diǎn)的下一個(gè),為當(dāng)前節(jié)點(diǎn)下一個(gè)的下一個(gè);
    }
}
c++循環(huán)單鏈表

循環(huán)單鏈表就是讓尾指針指向頭指針,每次執(zhí)行玩操作后,讓tail的下一個(gè)為head

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:國際域名空間、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、海城網(wǎng)站維護(hù)、網(wǎng)站推廣。

循環(huán)單鏈表的好處是從任何一個(gè)節(jié)點(diǎn)出發(fā)都可以遍歷整個(gè)鏈表

c++雙鏈表

c++雙鏈表就是可以快速的找到當(dāng)前節(jié)點(diǎn)的前一個(gè)元素,定義結(jié)構(gòu)體時(shí),添加一個(gè)pre指針

添加或者刪除時(shí)要注意先連線,在斷線

list為stl中的鏈表,可以參考文檔來學(xué)習(xí)

如果想看雙鏈表具體的執(zhí)行,可以私信我,我來更新

java單鏈表的定義
class Node{//如果是做題用,可以把這個(gè)類定義為靜態(tài)類
    public int value;
    public Node next;
    public Node(int value){this.value = value; 
    }
}
//定義頭和尾
Node head = null;
Node tail = null;
java單鏈表的添加
public void addFirst(int x){//如果頭為空,說明當(dāng)前鏈表為空,也就是第一次添加數(shù)據(jù)到鏈表
    Node cur = new Node(x); //定義當(dāng)前節(jié)點(diǎn)
    head = cur;
    tail = cur; //添加完后,頭和尾都是這個(gè)節(jié)點(diǎn)
}

public void addTail(int x){//添加到最后一個(gè)
    Node cur = new Node(x);
    Tail.next = cur;
    Tail = cur;
}

public void addHead(int x){Node cur = new Node(x);
    cur.next = head;
    head = cur;
}
public void add(int x, Node node){Node cur = new Node(x);
    cur.next = node.next;
    node.next = cur;
}
java單鏈表的刪除
public deleteHead(){//刪除第一個(gè)
 	head = head.next;   
}
public delete(Node node){//同c++,得先找到它的上一個(gè)節(jié)點(diǎn), 如果定義的不是雙鏈表,則這個(gè)操作為O(n);
    Node h = head;
    while(h.next != node){h = h.next;
    }
    h.next = h.next.next; //也可為h.next = node.next;
}
java循環(huán)單鏈表

每次執(zhí)行完添加或者操作之后,讓尾指針的next = 頭指針, tail.next = head

java雙鏈表

雙鏈表的好處就是可以更快的找到當(dāng)前節(jié)點(diǎn)的前一個(gè)節(jié)點(diǎn),表示的話多了一個(gè)pre指針(java可能不叫指針)

添加或者刪除時(shí)要注意先連線,在斷線

LinkedList為Java jdk中提供的鏈表,可以參考文檔來學(xué)習(xí)

如果想看雙鏈表具體的執(zhí)行,可以私信我,我來更新

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

網(wǎng)頁題目:java和c++的鏈表操作-創(chuàng)新互聯(lián)
文章源于:http://www.rwnh.cn/article6/cseeig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、搜索引擎優(yōu)化、網(wǎng)站制作、面包屑導(dǎo)航動(dòng)態(tài)網(wǎng)站、服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
内丘县| 英山县| 洛宁县| 信阳市| 高平市| 新巴尔虎右旗| 普格县| 东安县| 新郑市| 余干县| 体育| 加查县| 拜城县| 上蔡县| 田东县| 三原县| 仪陇县| 龙泉市| 东平县| 兴仁县| 庐江县| 化州市| 敦煌市| 杂多县| 珲春市| 青龙| 普兰县| 德化县| 喀喇| 朝阳市| 深水埗区| 富蕴县| 长寿区| 米易县| 行唐县| 大邑县| 安福县| 长乐市| 丹凤县| 西盟| 花垣县|