C 中的鍊錶怎樣逆序輸出?

時間 2021-06-03 01:16:39

1樓:田航語

如果面試官只要求列印,一般不改動鍊錶結構為好,如果要求改變鍊錶的方向,則需要改變結構,再順序列印。

方法:只逆序列印,不改變結構。利用棧的後進先出來實現逆序。

/*** struct ListNodeint valstruct ListNode *nextListNode(int xval(x), next(NULLclass Solution {

public:

vector printListFromTailToHead(ListNode* headvector resif(head==NULL) return resstack sListNode *cur=headwhile(head!=NULLs.push(head->valhead=head->nextwhile(!

s.emptyres.push_back(s.

tops.popreturn res

2樓:Skiiii

struct

ListNode

};ListNode

*reverse_list

(ListNode

*head

)returnp;

}這只是逆序,自己輸出吧,O(1)空間,別人說的遞迴壓棧都是O(n)

3樓:梁少聰

額,,我正好寫過乙個逆序列印的。用C寫的,,不知道可以幫到你不。

void

reverse_list

(list

**pplist)}

4樓:

反向迭代器

#include

#include

#include

#include

using

namespace

std;

intmain();

copy(a

.rbegin

(),a

.rend

(),ostream_iterator

(cout

," "));

return0;}

在C 中煉表重不重要?

Axio00SY 拋開語言,給樓主舉個例子,Linux核心中使用了大量的雙向迴圈鍊錶結構來組織資料 包括空閒記憶體塊列表 記憶體頁鍊錶 程序列表 裝置鍊錶 檔案系統列表等資料組織 所以當然重要了。清華ucore 從理解層面上來講,非常重要 鍊錶是你進一步學習更複雜的資料結構的基礎。從應用層面上來講,...

鍊錶中的哨兵是怎麼乙個作用?

宇佐見蓮子 萌新正在自學演算法導論正好看見這個問題 1.A sentinel is a dummy object that allows us to simplify boundary conditions.哨兵是用來簡化邊界問題的虛設物件 2.As shown in Figure 10.4,thi...

在C 控制台應用程式中,可以改變輸出文字的顏色和字型大小嗎 如何改變?

葉星辰 顏色 windows 需要include SetConsoleTextAttribute GetStdHandle STD OUTPUT HANDLE color 其中color是顏色,分為前景色和背景色 前景色 背景色 16就是color,還可以隨便加256 對應表 0 黑色 1 藍色 2...