提交 35cda77f authored 作者: xuyang's avatar xuyang

commit questions

上级
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<option name="DEFAULT_COMPILER" value="Javac" />
<resourceExtensions />
<wildcardResourcePatterns>
<entry name="!?*.java" />
<entry name="!?*.form" />
<entry name="!?*.class" />
<entry name="!?*.groovy" />
<entry name="!?*.scala" />
<entry name="!?*.flex" />
<entry name="!?*.kt" />
<entry name="!?*.clj" />
</wildcardResourcePatterns>
<annotationProcessing>
<profile default="true" name="Default" enabled="false">
<processorPath useClasspath="true" />
</profile>
</annotationProcessing>
</component>
</project>
<html>Simple <b>Java</b> application that includes a class with <code>main()</code> method</html>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with NO BOM">
<file url="PROJECT" charset="UTF-8" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectKey">
<option name="state" value="project://63537948-39a4-48a0-9c97-34259a0fa913" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/test_xy.iml" filepath="$PROJECT_DIR$/test_xy.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="" />
</component>
</project>
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="f4be77a7-1db1-4512-b700-a5dd65c0d914" name="Default Changelist" comment="" />
<ignored path="$PROJECT_DIR$/out/" />
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="36">
<caret line="2" column="44" lean-forward="true" selection-start-line="2" selection-start-column="44" selection-end-line="2" selection-end-column="44" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/Solution.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="333">
<caret line="159" column="35" selection-start-line="159" selection-start-column="35" selection-end-line="159" selection-end-column="35" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="FileTemplateManagerImpl">
<option name="RECENT_TEMPLATES">
<list>
<option value="Class" />
</list>
</option>
</component>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/src/Main.java" />
<option value="$PROJECT_DIR$/src/TwoSum.java" />
<option value="$PROJECT_DIR$/src/Solution.java" />
</list>
</option>
</component>
<component name="ProjectFrameBounds" extendedState="6">
<option name="x" value="30" />
<option name="y" value="5" />
<option name="width" value="1612" />
<option name="height" value="1056" />
</component>
<component name="ProjectView">
<navigator proportions="" version="1">
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="PackagesPane" />
<pane id="Scope" />
<pane id="ProjectPane">
<subPane>
<expand>
<path>
<item name="test_xy" type="b2602c69:ProjectViewProjectNode" />
<item name="test_xy" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="test_xy" type="b2602c69:ProjectViewProjectNode" />
<item name="test_xy" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
</panes>
</component>
<component name="PropertiesComponent">
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="aspect.path.notification.shown" value="true" />
<property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1587015776974" />
</component>
<component name="RunDashboard">
<option name="ruleStates">
<list>
<RuleState>
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
</RuleState>
<RuleState>
<option name="name" value="StatusDashboardGroupingRule" />
</RuleState>
</list>
</option>
</component>
<component name="RunManager">
<configuration name="Main" type="Application" factoryName="Application" temporary="true">
<option name="MAIN_CLASS_NAME" value="Main" />
<module name="test_xy" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<RunnerSettings RunnerId="Run" />
<ConfigurationWrapper RunnerId="Run" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
</component>
<component name="SvnConfiguration">
<configuration />
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="f4be77a7-1db1-4512-b700-a5dd65c0d914" name="Default Changelist" comment="" />
<created>1587014463821</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1587014463821</updated>
<workItem from="1587014467748" duration="1307000" />
</task>
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="1307000" />
</component>
<component name="ToolWindowManager">
<frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
<editor active="true" />
<layout>
<window_info id="Image Layers" />
<window_info id="Designer" />
<window_info id="UI Designer" />
<window_info id="Capture Tool" />
<window_info id="Favorites" side_tool="true" />
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.25" />
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
<window_info anchor="bottom" id="Docker" show_stripe_button="false" />
<window_info anchor="bottom" id="Database Changes" />
<window_info anchor="bottom" id="Version Control" />
<window_info anchor="bottom" id="Terminal" />
<window_info anchor="bottom" id="Event Log" side_tool="true" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info anchor="bottom" id="Run" order="2" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info anchor="right" id="Palette" />
<window_info anchor="right" id="Theme Preview" />
<window_info anchor="right" id="Maven" />
<window_info anchor="right" id="Capture Analysis" />
<window_info anchor="right" id="Palette&#9;" />
<window_info anchor="right" id="Database" />
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
</layout>
</component>
<component name="TypeScriptGeneratedFilesManager">
<option name="version" value="1" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/.idea/misc.xml">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/.idea/encodings.xml">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/test_xy.iml">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/.idea/modules.xml">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/src/TwoSum.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="36">
<caret line="2" column="4" selection-start-line="2" selection-start-column="4" selection-end-line="2" selection-end-column="4" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="36">
<caret line="2" column="44" lean-forward="true" selection-start-line="2" selection-start-column="44" selection-end-line="2" selection-end-column="44" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/Solution.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="333">
<caret line="159" column="35" selection-start-line="159" selection-start-column="35" selection-end-line="159" selection-end-column="35" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component>
</project>
\ No newline at end of file
public class Main {
public static void main(String[] args) {
}
}
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Solution {
/**
* 题目:1.两数之和
* 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。
*
* 示例:
* 输入: nums = [2, 7, 11, 15], target = 9
* 输出: [0, 1]
* 解释: 2 与 7 之和等于目标数 9 。因此 index1 = 0, index2 = 1
*
* @author xuyang
**/
public int[] twoSum(int[] nums, int target) {
int[] res = new int[2];
for (int i = 1; i < nums.length; i++) {
for (int j = 0; j < i; j++) {
if (nums[i] + nums[j] == target) {
res[0] = j;
res[1] = i;
return res;
}
}
}
return nums;
}
/**
* 题目:167. 两数之和 II - 输入有序数组
* 给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。
*
* 示例:
* 输入: nums = [2, 7, 11, 15], target = 9
* 输出: [0, 1]
* 解释: 2 与 7 之和等于目标数 9 。因此 index1 = 0, index2 = 1
*
* @author xuyang
**/
public int[] twoSumSorted(int[] numbers, int target) {
int i = 0;
int j = numbers.length - 1;
int sum = 0;
int[] res = new int[2];
while(i < j) {
sum = numbers[i] + numbers[j];
if(sum < target) {
i++;
}
if(sum > target) {
j--;
}
if(sum == target) {
res[0] = i;
res[1] = j;
return res;
}
}
return numbers;
}
/**
* 题目:11. 盛最多水的容器
* n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和
* (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水
*
* 示例:
* 输入: [1,8,6,2,5,4,8,3,7]
* 输出: 49
* 解释:
*
* @author xuyang
**/
public int maxArea(int[] height) {
int sum = 0;
int len = 0;
int high = 0;
int squ = 0;
for(int i = 0; i < height.length-1; i++){
for(int j = i+1; j < height.length; j++){
len = j - i;
high = (height[i]<height[j]) ? height[i] : height[j];
squ = len * high;
if(squ > sum) {
sum = squ;
}
}
}
return sum;
}
/**
* 题目:15. 三数之和
* 一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组
*
* 示例:
* 输入: nums = [-1, 0, 1, 2, -1, -4]
* 输出: [
* [-1, 0, 1],
* [-1, -1, 2]
* ]
* 解释:
*
* @author xuyang
* 双指针
**/
public List<List<Integer>> threeSum(int[] nums) {
Arrays.sort(nums);
List<List<Integer>> lists = new ArrayList<>();
for(int i = 0; i < nums.length-2; i++) {
int a = i+1;
int b = nums.length-1;
if(nums[i] > 0) {
break;
}
if(i > 0 && nums[i] == nums[i-1]) {
continue;
}
while (a < b) {
int sum = nums[i] + nums[a] + nums[b];
if(sum < 0) {
while(nums[a] == nums[a+1] && a < b) {
a++;
}
}else if(sum > 0) {
while(nums[b] == nums[b-1] && a < b) {
b--;
}
}else {
List<Integer> list = new ArrayList<>();
list.add(nums[i]);
list.add(nums[a]);
list.add(nums[b]);
lists.add(list);
while(nums[a] == nums[a+1] && a < b) {
a++;
}
while(nums[b] == nums[b-1] && a < b) {
b--;
}
}
}
}
return lists;
}
/**
* 题目:42. 接雨水
* 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。
*
* 示例:
* 输入: [0,1,0,2,1,0,1,3,2,1,2,1]
* 输出: 6
* 解释:
*
* @author xuyang
* 根据一个结点,在它左右两端分别找出最长边,取其中的较小值
**/
public int trap(int[] height) {
int sum = 0;
for (int i = 1; i < height.length - 1; i++) {
int max_left = 0;
for (int j = i - 1; j >= 0; j--) {
if (height[j] > max_left) {
max_left = height[j];
}
}
int max_right = 0;
for (int j = i + 1; j < height.length; j++) {
if (height[j] > max_right) {
max_right = height[j];
}
}
int min = Math.min(max_left, max_right);
if (min > height[i]) {
sum = sum + (min - height[i]);
}
}
return sum;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论