zoukankan      html  css  js  c++  java
  • LeetCode 1290. 二进制链表转整数

    1290. 二进制链表转整数

    Difficulty: 简单

    给你一个单链表的引用结点 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

    Solution

    不管是二进制还是十进制,如果给你一串十进制的字符串,如何转换成为数学意义的数字呢?

    # Definition for singly-linked list.
    # class ListNode:
    #     def __init__(self, x):
    #         self.val = x
    #         self.next = None
    ​
    class Solution:
        def getDecimalValue(self, head: ListNode) -> int:
            res = 0
            while head:
                res = res * 2 + head.val
                head = head.next
            return res
    
  • 相关阅读:
    2015多校.Zero Escape (dp减枝 && 滚动数组)
    UVa-11809
    UVa-1588 Kickdown
    UVa-1587
    UVa-10340
    UVa-202
    UVa-1368
    UVa-232 Crossword Answers
    UVa-227
    UVa-455 Periodic Strings
  • 原文地址:https://www.cnblogs.com/swordspoet/p/14238602.html
Copyright © 2011-2022 走看看