1. 程式人生 > 實用技巧 >[LeetCode]1290. 二進位制連結串列轉整數

[LeetCode]1290. 二進位制連結串列轉整數

給你一個單鏈表的引用結點 head。連結串列中每個結點的值不是 0 就是 1。已知此連結串列是一個整數數字的二進位制表示形式。

請你返回該連結串列所表示數字的 十進位制值 。

示例 1:

輸入:head = [1,0,1]
輸出:5
解釋:二進位制數 (101) 轉化為十進位制數 (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

提示:

  • 連結串列不為空。
  • 連結串列的結點總數不超過 30。
  • 每個結點的值不是 0 就是 1。

來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/convert-binary-number-in-a-linked-list-to-integer
著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     public int val;
 *     public ListNode next;
 *     public ListNode(int x) { val = x; }
 * }
 */
public class Solution {
    public int GetDecimalValue(ListNode head) {
        string hexstr = "";
        while(head != null){
            hexstr += head.val;
            head = head.next;
        }
        return Convert.ToInt32(hexstr, 2);
    }
}