/*
* function ListNode(x){
* this.val = x;
* this.next = null;
* }
*/
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param head ListNode类
* @param m int整型
* @param n int整型
* @return ListNode类
*/
function reverseBetween( head , m , n ) {
// write code here
const nodeArr = []
while(head) {
nodeArr.push(new ListNode(head.val))
head = head.next
}
const newArr = nodeArr.slice(0, m - 1).concat(nodeArr.slice(m - 1, n).reverse(), nodeArr.slice(n))
const newNode = new ListNode(0)
let cur = newNode;
newArr.forEach(n => {
cur.next = n
cur = cur.next
})
return newNode.next
}
module.exports = {
reverseBetween : reverseBetween
};