阿里云備案個人可以做網(wǎng)站嗎怎么建立一個網(wǎng)站
給你一個單鏈表的引用結(jié)點?head
。鏈表中每個結(jié)點的值不是 0 就是 1。已知此鏈表是一個整數(shù)數(shù)字的二進制表示形式。
請你返回該鏈表所表示數(shù)字的?十進制值?。
示例 1:
輸入:head = [1,0,1] 輸出:5 解釋:二進制數(shù) (101) 轉(zhuǎn)化為十進制數(shù) (5)
示例 2:
輸入:head = [0] 輸出:0
示例 3:
輸入:head = [1] 輸出:1
示例 4:
輸入:head = [1,0,0,1,0,0,1,1,1,0,0,0,0,0,0] 輸出:18880
示例 5:
輸入:head = [0,0] 輸出:0
提示:
- 鏈表不為空。
- 鏈表的結(jié)點總數(shù)不超過?
30
。 - 每個結(jié)點的值不是?
0
?就是?1
。
代碼:
/*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x), next(nullptr) {}* ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {
public:int getDecimalValue(ListNode* head) {ListNode *cur = head;int ans = 0;while (cur != nullptr) {ans = ans * 2 + cur->val;cur = cur->next;}return ans;}
};