mirror of
				https://github.com/krahets/hello-algo.git
				synced 2025-11-04 14:18:20 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			51 lines
		
	
	
		
			929 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			929 B
		
	
	
	
		
			C++
		
	
	
	
	
	
/*
 | 
						|
 * File: PrintUtil.hpp
 | 
						|
 * Created Time: 2021-12-19
 | 
						|
 * Author: Krahets (krahets@163.com)
 | 
						|
 */
 | 
						|
 | 
						|
#pragma once
 | 
						|
 | 
						|
#include <iostream>
 | 
						|
using namespace std;
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief Definition for a singly-linked list node
 | 
						|
 * 
 | 
						|
 */
 | 
						|
struct ListNode {
 | 
						|
    int val;
 | 
						|
    ListNode *next;
 | 
						|
    ListNode(int x) : val(x), next(nullptr) {}
 | 
						|
};
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief Generate a linked list with a vector
 | 
						|
 * 
 | 
						|
 * @param list 
 | 
						|
 * @return ListNode* 
 | 
						|
 */
 | 
						|
ListNode* vecToLinkedList(vector<int> list) {
 | 
						|
    ListNode *dum = new ListNode(0);
 | 
						|
    ListNode *head = dum;
 | 
						|
    for (int val : list) {
 | 
						|
        head->next = new ListNode(val);
 | 
						|
        head = head->next;
 | 
						|
    }
 | 
						|
    return dum->next;
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief Get a list node with specific value from a linked list
 | 
						|
 * 
 | 
						|
 * @param head 
 | 
						|
 * @param val 
 | 
						|
 * @return ListNode* 
 | 
						|
 */
 | 
						|
ListNode* getListNode(ListNode *head, int val) {
 | 
						|
    while (head != nullptr && head->val != val) {
 | 
						|
        head = head->next;
 | 
						|
    }
 | 
						|
    return head;
 | 
						|
}
 |