• 1290. Convert Binary Number in a Linked List to Integer


    Given head which is a reference node to a singly-linked list. The value of each node in the linked list is either 0 or 1. The linked list holds the binary representation of a number.

    Return the decimal value of the number in the linked list.

    Example 1:

    Input: head = [1,0,1]
    Output: 5
    Explanation: (101) in base 2 = (5) in base 10
    

    Example 2:

    Input: head = [0]
    Output: 0
    

    Example 3:

    Input: head = [1]
    Output: 1
    

    Example 4:

    Input: head = [1,0,0,1,0,0,1,1,1,0,0,0,0,0,0]
    Output: 18880
    

    Example 5:

    Input: head = [0,0]
    Output: 0
    

    Constraints:

    • The Linked List is not empty.
    • Number of nodes will not exceed 30.
    • Each node's value is either 0 or 1.
    class Solution {
        public int getDecimalValue(ListNode head) {
            int res = 0;
            while(head != null){
                res = res*2 + head.val;
                head = head.next;
            }
            return res;
        }
    }

    屌一点的

    class Solution {
        public int getDecimalValue(ListNode head) {
            int res = 0;
            while(head != null){
                res = res<<1 | head.val;
                head = head.next;
            }
            return res;
        }
    }

    效果是一样的

  • 相关阅读:
    F系列车牌识别设备
    金蝶云星空安装及卸载教程
    RG-RAC256高性能无线控制器
    关于IP网段划分
    Win10关闭自动更新的三种方法
    锐捷网络RG-S2528G-24P
    光纤信号的传输距离
    POE交换机
    光纤收发器
    大华工具管家 1.01.1官方版
  • 原文地址:https://www.cnblogs.com/wentiliangkaihua/p/12205482.html
Copyright © 2020-2023  润新知