每日总结2023-04-09

Posted JJTyyds

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每日总结2023-04-09相关的知识,希望对你有一定的参考价值。

今天完成了密码找回界面

代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@mipmap/qw"
    android:orientation="vertical"
    tools:context=".retrieve_Activity">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:scaleType="fitStart"
        android:src="@mipmap/top" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="30dp"
        android:layout_marginTop="150dp"
        android:layout_marginRight="30dp"
        android:background="@drawable/background_res"
        android:orientation="vertical">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp">

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:src="@drawable/name" />

            <EditText
                android:id="@+id/main2_name"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="bottom"
                android:layout_marginLeft="10dp"
                android:background="@null"
                android:hint="手机号/邮箱"
                android:imeOptions="actionSearch"
                android:maxLength="10"
                android:maxLines="1"
                android:singleLine="true"
                tools:ignore="TouchTargetSizeCheck" />

        </LinearLayout>

        <View
            android:layout_width="match_parent"
            android:layout_height="2px"
            android:layout_marginTop="5dp"
            android:layout_marginBottom="20dp"
            android:background="#f3f3f3" />


    </LinearLayout>

    <Button
        android:id="@+id/main2_res"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="50dp"
        android:layout_marginTop="340dp"
        android:layout_marginRight="50dp"
        android:background="@drawable/button_1"
        android:onClick="find_pas"
        android:text="找回" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="30dp"
        android:layout_marginTop="420dp"
        android:layout_marginRight="30dp"
        android:orientation="vertical">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:src="@drawable/password" />

            <TextView
                android:id="@+id/main2_password"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="30dp"
                android:text="密码为" />

        </LinearLayout>

        <View
            android:layout_width="match_parent"
            android:layout_height="2px"
            android:layout_marginTop="5dp"
            android:layout_marginBottom="20dp"
            android:background="#f3f3f3" />

    </LinearLayout>
</RelativeLayout>

Java文件为

package com.example.math;
/*
* 找回界面*/
import static android.widget.Toast.LENGTH_SHORT;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import com.example.math.repositiory.user_res;

public class retrieve_Activity extends AppCompatActivity 

    @Override
    protected void onCreate(Bundle savedInstanceState) 
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_retrieve);
    

    public void find_pas(View view) 
        EditText main2_name = findViewById(R.id.main2_name);
        TextView main2_pas = findViewById(R.id.main2_password);
        Handler handler = new Handler();

        new Thread() 

            @Override
            public void run() 
                String pas;
                try 
                    pas = user_res.findPassword(main2_name.getText().toString());
                 catch (Exception e) 
                    throw new RuntimeException(e);
                
                handler.post(() -> main2_pas.setText(pas));
            
        .start();
        Toast.makeText(getApplicationContext(), "找回成功", Toast.LENGTH_LONG).show();
    

 

20210827每日总结

20210827 每日总结

  1. python细节:

    • 回溯法把每一层的结果放入总结果result时,要用切片的方式复制append(path[:]),否则仅仅是引用了path的地址,会随着path不断变化
  2. 回溯法复习

    • 组合问题:参数StartIndex 控制每一层遍历数组里的下一个数字。
      • 组合总和,无重复元素情况下:元素不能重复拿,每次递归从startindex+1开始;可以重复拿就从startindex开始。
      • 组合总和2,有重复元素情况下:元素只能拿一次,且不能出现相同组合,意味着同一树层上不能重复,同一树枝上可以重复,需要一个used数组判断前一个相同的数字是否用过(某数和前数相等且前数的used为初始状态,则同层使用过)
    • LC17电话号码组合问题:需要一个index来控制遍历不同的数字(即遍历的深度);而每个数字对应的3-4个字母是每一层遍历的广度(由本层的for循环控制),终止条件就是深度参数idx等于规定的长度。每次递归传入idx+1表示处理下一个数字。
    • 切割问题:startIdx模拟切割线,对[startIdx:i+1]子串进行递归遍历、判断、回溯。
    • 子集问题:要保存的是所有节点而非仅仅是叶子结点。写法上的区别在于:不需要结束条件,递归收集所有节点,for循环结束自动结束
    • LC491.递增子序列:与组合总和2相似,都是数组有重复且不允许结果重复。组合问题可以排序+标记来去重,此题牵扯到递增,不能排序,单开一个数组记录本层哪些数字访问过。
    • 排列问题:
      • 无重复的数组的全排列,和组合问题的不同就是每次递归都从0开始遍历,用used数组来保证不会重复选到自己,体现在代码上就是组合问题的used数组可以放在递归函数内,每一个新分支都重置;而排列问题used数组放在递归函数外,保证每个分支往深处递归时不停的更新。
      • 有重复的数组的全排列,要求结果不能重复,这就说明同一树层和同一树枝上的元素都不能重复。综合前面的去重方法,用used[i-1] 和 used[i]来判断。
  3. 动态规划 子序列子串问题复习

    • 最长递增子序列:因为要求可以不连续,故而dp[i] 依赖于从0-i-1的最长子序列长度+1。
    • 最长连续递增子序列:要求必须连续,故而dp[i] 只依赖于dp[i-1] +1 ,初始化都为1。
    • 最长重复子数组:要求必须连续,定义dp[i][j] 为A下标0-i-1、B下标0-j-1的子串的最长公共子数组长度,只依赖于dp[i-1][j-1]
    • 最长公共子序列:要求不一定连续,分类讨论当A[i-1][j-1]和B[i-1][j-1]相等和不相等(不相等时i j依赖于i-1 j和i j-1的最大值)

以上是关于每日总结2023-04-09的主要内容,如果未能解决你的问题,请参考以下文章

每日总结#2

2107 JAVASE每日复习总结 链接汇总

2110 JAVASE每日复习总结 链接汇总

2111 JAVASE每日复习总结 链接汇总

2108 JAVASE每日复习总结 链接汇总

2109 JAVASE每日复习总结 链接汇总