题目一:
链接:重新排列数组
解题思路:
下标对称,一 一入座
JAVA:
class Solution {
public int[] shuffle(int[] nums, int n) {
int [] data=new int[nums.length];
int k=0;
for(int i=0;i<n;i++){
data[k]=nums[i];
k++;
data[k]=nums[n+i];
k++;
}
return data;
}
}
题目二:
链接:数组串连
解题思路:
下标对称
JAVA:
class Solution {
public int[] getConcatenation(int[] nums) {
int data[] =new int[nums.length*2];
for(int i=0;i<nums.length;i++){
data[i]=nums[i];
data[nums.length+i]=nums[i];
}
return data;
}
}
题目三:
链接:基于排列构建数组
解题思路:
C++:
class Solution {
public:
vector<int> buildArray(vector<int>& nums) {
vector<int> l;
for(int i=0;i<nums.size();i++){
l.push_back(nums[nums[i]]);
}
return l;
}
};
题目四:
链接:一维数组动态求和
解题思路:
a[j]=a[j-1]+a[j]
C++:
class Solution {
public:
vector<int> runningSum(vector<int>& nums) {
for(int i=0;i<nums.size();i++){
if(i==0)
continue;
else{
nums[i]+=nums[i-1];
}
}
return nums;
}
};
题目五:
class Solution {
public:
string reverseLeftWords(string s, int n) {
string t=s.substr(n,s.size())+s.substr(0,n);
return t;
}
};
题目六:
链接:Ip地址无效
解题思路:
python:
class Solution(object):
def defangIPaddr(self, address):
"""
:type address: str
:rtype: str
"""
t=address.replace('.',"[.]")
return t
题目七:
链接:比较数的大小
解题思路:
暴力比较
JAVA:
class Solution {
public int[] smallerNumbersThanCurrent(int[] nums) {
int data[]=new int[nums.length];
for(int i=0;i<nums.length;i++){
int k=0;
for(int j=0;j<nums.length;j++){
if(j!=i&&nums[i]>nums[j])
k++;
}
data[i]=k;
}
return data;
}
}
题目八:
链接 :按既定排序
解题思路:
JAVA:
class Solution {
public int[] createTargetArray(int[] nums, int[] index) {
for(int i=0;i<index.length;i++){
if(index[i]<i){
int k=nums[i];
for(int j=i;j>index[i];j--){
nums[j]=nums[j-1];
}
nums[index[i]]=k;
}
}
return nums;
}
}