写点什么

ARTS- 第一周

用户头像
爱睡的猫
关注
发布于: 2020 年 06 月 09 日



Algorithm



删除重复数组的重复项



https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/submissions/

说明:

给定一个有序数组,在遇到重复的数组选项需要就地删除。使得每个元素只出现一次,最后返回数组的长度。

要求:不使用额外的空间,原地完成修改。

我的思路:因为不能使用额外的空间进行替换,所以需要在数组中使用两个游标,对数组中的元素进行替换和删除。具体代码如下:



class Solution {

public int removeDuplicates(int[] nums) {

if (nums.length<=1){

return nums.length;

}

int size = nums.length;

int singleNum = 0;

for(int i = 1;i<size;i++) {

if (size == 2) {

if (nums[0] == nums[1]) {

return singleNum + 1;

} else {

return singleNum + 2;

}

} else {

boolean isRepeat = false;

for (int j = 0; j < i; j++) {

if (nums[i] == nums[j]) {

isRepeat = true;

break;

}

}

if (!isRepeat) {

singleNum++;

nums[singleNum] = nums[i];

}

}

}

System.out.print("nums = ");

for (int i = 0; i < nums.length; i++) {

System.out.print(nums[i]+"," );

}

return singleNum + 1;

}

}

Review

原文来自RN的官方文档:

https://reactnative.dev/docs/props.html

props在rn中是使用频率较高的属性。

props通常在component在创建的时候产生。通常被用来传递组件中不同的自定义属性。

例如官方文档提到的Image。

import React, { Component } from 'react';
import { Image } from 'react-native';

export default function Bananas() {
let pic = {
uri: 'https://upload.wikimedia.org/wikipedia/commons/d/de/Bananavarieties.jpg'
};
return (
<Image source={pic} style={{width: 193, height: 110, marginTop:50}}/>
);
}

在例子中,Image组件使用了source定义了Image中图片路径。

这个source就属于props的内容。

当然,自定义的component也可以使用props用来传递属性。

在自定义的component在render中,被调用时,可以传递属性内容。

例如:

import React, { Component } from 'react';
import { Text, View } from 'react-native';

const Greeting = (props) => {
return (
<View style={{alignItems: 'center'}}>
<Text>Hello {props.name}!</Text>
</View>
);
}

export default function LotsOfGreetings() {
return (
<View style={{alignItems: 'center', top: 50}}>
<Greeting name='Rexxar' />
<Greeting name='Jaina' />
<Greeting name='Valeera' />
</View>
);
}



在上面的例子中,props的自定义属性名称为name。在自定义component中直接使用了name作为变量显示在界面中。在render中调用的时候直接对name进行赋值。



Tip

react-native-config是一个在RN项目中经常被用到的库。主要被用作给各个module提供全局变量。

链接在:https://github.com/luggit/react-native-config

具体实现方式是需要在RN的根目录创建一个后缀是.env的文件。

在.env文件中,设置全局变量。

变量名必须是大写,变量值可以小写。

例如:

API_URL=https://myapi.com
GOOGLE_MAPS_API_KEY=abcdefgh

设置好全局变量后,在各个modules中通过import的形式导入该库:

import Config from "react-native-config";

Config.API_URL; // 'https://myapi.com'
Config.GOOGLE_MAPS_API_KEY; // 'abcdefgh'

在module中就可以使用.env中保存的全局变量了。

需要注意的是不可以保存密匙等私密信息。在打包和逆向工程都可以解出.env的明文。



Share

分享一本很有名的书吧,最近正在重温。

书名是《图解http》

https://www.ituring.com.cn/book/1229

图灵上有电子书可以看,比较方便。



build



用户头像

爱睡的猫

关注

还未添加个人签名 2018.06.10 加入

还未添加个人简介

评论

发布
暂无评论
ARTS-第一周