1、平面上有 n 个点,点的位置用整数坐标表示 points[i] = [xi, yi]。请你计算访问所有这些点需要的最小时间(以秒为单位)
你可以按照下面的规则在平面上移动:
- 每一秒沿水平或者竖直方向移动一个单位长度,或者跨过对角线(可以看作在一秒内向水平和竖直方向各移动一个单位长度)
- 必须按照数组中出现的顺序来访问这些点
int minTimeToVisitAllPoints(int** points, int pointsSize, int* pointsColSize){
int sum=0;
int a,b;
for(int i=0;i<pointsSize-1;i++)
{
a=abs(points[i][0]-points[i+1][0]);//横坐标
b=abs(points[i][1]-points[i+1][0]);//纵坐标
sum=sum+abs(a-b);
if(a>b)
{
sum=sum+b;
}
else
{
sum=sum+a;
}
}
*pointsColSize=sum;
return sum;
}
2、请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。
现有一个链表 – head = [4,5,1,9],它可以表示为:
void deleteNode(struct ListNode* node) {
node->val = node->next->val;
node->next = node->next->next;
}
</