leecode,rt_phm更新更新

This commit is contained in:
kevinding1125 2023-06-11 13:45:59 +08:00
parent f13333e69b
commit 242d98d0c0
7 changed files with 336 additions and 267 deletions

View File

@ -1,264 +0,0 @@
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000006abea148, pid=12532, tid=0x0000000000004e18
#
# JRE version: Java(TM) SE Runtime Environment (8.0_311-b11) (build 1.8.0_311-b11)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.311-b11 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# V [jvm.dll+0x19a148]
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
# http://bugreport.java.com/bugreport/crash.jsp
#
--------------- T H R E A D ---------------
Current thread (0x000002d51ddc9000): JavaThread "JDWP Transport Listener: dt_socket" daemon [_thread_in_vm, id=19992, stack(0x000000ec02500000,0x000000ec02600000)]
siginfo: ExceptionCode=0xc0000005, reading address 0x000002d51d8e2018
Registers:
RAX=0x000002d51d7786d0, RBX=0x0000000000000003, RCX=0x000002d51d8e2008, RDX=0x000002d51d779200
RSP=0x000000ec025ff7b0, RBP=0x000000ec025ff829, RSI=0x00000000000000b6, RDI=0x000002d51d779268
R8 =0x000002d51d779aa8, R9 =0x00007ffedf820000, R10=0x000002d51d779211, R11=0x000002d51fea87d9
R12=0x000002d51fea87d8, R13=0x000000ec025ff8b0, R14=0x000000000000005b, R15=0x00000000000000b6
RIP=0x000000006abea148, EFLAGS=0x0000000000010202
Top of Stack: (sp=0x000000ec025ff7b0)
0x000000ec025ff7b0: 000002d51ddc9000 00000000000000b6
0x000000ec025ff7c0: 0000000000000003 000002d51ddc9000
0x000000ec025ff7d0: 000002d51d779268 000002d51d779268
0x000000ec025ff7e0: 000002d51d779268 000002d51d779268
0x000000ec025ff7f0: 000002d51ddc9000 000002d51d779268
0x000000ec025ff800: 000002d51ddc9000 000002d51d779268
0x000000ec025ff810: 000002d51ddc9000 0000005b00000058
0x000000ec025ff820: 000000b600000072 000000006ac50000
0x000000ec025ff830: 00000000000000b6 0000000000000000
0x000000ec025ff840: 0000000000000000 0000000000000072
0x000000ec025ff850: 000000ec025ff9c0 0000000000000000
0x000000ec025ff860: 0000000000000000 000000ec025ff9c8
0x000000ec025ff870: 000002d51ddc9000 000002d51d779268
0x000000ec025ff880: 0000000000000000 000000006abef64f
0x000000ec025ff890: 000000ec025ff8b0 000002d51fea87d8
0x000000ec025ff8a0: 000002d507c50a01 000002d51d779268
Instructions: (pc=0x000000006abea148)
0x000000006abea128: 10 84 d2 74 0b 41 8b 45 31 f7 d0 48 63 c8 eb 05
0x000000006abea138: 41 0f b7 4d 31 4c 8b 6d 67 48 c1 e1 05 49 03 c8
0x000000006abea148: 48 8b 49 10 44 8b 75 f3 0f b6 c1 66 c1 e0 08 66
0x000000006abea158: c1 e9 08 66 0b c1 66 41 89 44 24 01 84 d2 0f 84
Register to memory mapping:
RAX=0x000002d51d7786d0 is pointing into metadata
RBX=0x0000000000000003 is an unknown value
RCX=0x000002d51d8e2008 is an unknown value
RDX=0x000002d51d779200 is pointing into metadata
RSP=0x000000ec025ff7b0 is pointing into the stack for thread: 0x000002d51ddc9000
RBP=0x000000ec025ff829 is pointing into the stack for thread: 0x000002d51ddc9000
RSI=0x00000000000000b6 is an unknown value
RDI={method} {0x000002d51d779270} 'test' '()V' in 'com/markilue/leecode/listnode/MyLinkedList'
R8 =0x000002d51d779aa8 is pointing into metadata
R9 =0x00007ffedf820000 is an unknown value
R10=0x000002d51d779211 is pointing into metadata
R11=0x000002d51fea87d9 is an unknown value
R12=0x000002d51fea87d8 is an unknown value
R13=0x000000ec025ff8b0 is pointing into the stack for thread: 0x000002d51ddc9000
R14=0x000000000000005b is an unknown value
R15=0x00000000000000b6 is an unknown value
Stack: [0x000000ec02500000,0x000000ec02600000], sp=0x000000ec025ff7b0, free space=1021k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [jvm.dll+0x19a148]
V [jvm.dll+0x19f64f]
V [jvm.dll+0x3408eb]
C [jdwp.dll+0x4296]
C [jdwp.dll+0xef91]
C [jdwp.dll+0x1f4f5]
C [jdwp.dll+0x1f45e]
V [jvm.dll+0x1ba3aa]
V [jvm.dll+0x23df22]
V [jvm.dll+0x29253c]
C [ucrtbase.dll+0x21bb2]
C [KERNEL32.DLL+0x17034]
C [ntdll.dll+0x52651]
--------------- P R O C E S S ---------------
Java Threads: ( => current thread )
0x000002d51fc40800 JavaThread "Service Thread" daemon [_thread_blocked, id=21716, stack(0x000000ec02c00000,0x000000ec02d00000)]
0x000002d51fba9000 JavaThread "C1 CompilerThread3" daemon [_thread_blocked, id=14316, stack(0x000000ec02b00000,0x000000ec02c00000)]
0x000002d51fb9e800 JavaThread "C2 CompilerThread2" daemon [_thread_blocked, id=19840, stack(0x000000ec02a00000,0x000000ec02b00000)]
0x000002d51fb9d800 JavaThread "C2 CompilerThread1" daemon [_thread_blocked, id=16824, stack(0x000000ec02900000,0x000000ec02a00000)]
0x000002d51fb9b000 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=12300, stack(0x000000ec02800000,0x000000ec02900000)]
0x000002d51faf3800 JavaThread "JDWP Command Reader" daemon [_thread_in_native, id=2456, stack(0x000000ec02700000,0x000000ec02800000)]
0x000002d51faf0800 JavaThread "JDWP Event Helper Thread" daemon [_thread_blocked, id=9096, stack(0x000000ec02600000,0x000000ec02700000)]
=>0x000002d51ddc9000 JavaThread "JDWP Transport Listener: dt_socket" daemon [_thread_in_vm, id=19992, stack(0x000000ec02500000,0x000000ec02600000)]
0x000002d51ddbc000 JavaThread "Attach Listener" daemon [_thread_blocked, id=18836, stack(0x000000ec02400000,0x000000ec02500000)]
0x000002d51dd67800 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=21684, stack(0x000000ec02300000,0x000000ec02400000)]
0x000002d51dd39000 JavaThread "Finalizer" daemon [_thread_blocked, id=10800, stack(0x000000ec02200000,0x000000ec02300000)]
0x000002d51dd30800 JavaThread "Reference Handler" daemon [_thread_blocked, id=21884, stack(0x000000ec02100000,0x000000ec02200000)]
0x000002d507b9a800 JavaThread "main" [_thread_blocked, id=16780, stack(0x000000ec01700000,0x000000ec01800000)]
Other Threads:
0x000002d51dd06800 VMThread [stack: 0x000000ec02000000,0x000000ec02100000] [id=3664]
0x000002d51fc59000 WatcherThread [stack: 0x000000ec02d00000,0x000000ec02e00000] [id=15732]
VM state:not at safepoint (normal execution)
VM Mutex/Monitor currently owned by a thread: None
heap address: 0x0000000081c00000, size: 2020 MB, Compressed Oops mode: 32-bit
Narrow klass base: 0x0000000000000000, Narrow klass shift: 3
Compressed class space size: 1073741824 Address: 0x0000000100000000
Heap:
PSYoungGen total 38400K, used 10018K [0x00000000d5f00000, 0x00000000d8980000, 0x0000000100000000)
eden space 33280K, 30% used [0x00000000d5f00000,0x00000000d68c8bd8,0x00000000d7f80000)
from space 5120K, 0% used [0x00000000d8480000,0x00000000d8480000,0x00000000d8980000)
to space 5120K, 0% used [0x00000000d7f80000,0x00000000d7f80000,0x00000000d8480000)
ParOldGen total 87552K, used 0K [0x0000000081c00000, 0x0000000087180000, 0x00000000d5f00000)
object space 87552K, 0% used [0x0000000081c00000,0x0000000081c00000,0x0000000087180000)
Metaspace used 5032K, capacity 5348K, committed 5504K, reserved 1056768K
class space used 579K, capacity 595K, committed 640K, reserved 1048576K
Card table byte_map: [0x000002d518910000,0x000002d518d10000] byte_map_base: 0x000002d518502000
Marking Bits: (ParMarkBitMap*) 0x000000006b238030
Begin Bits: [0x000002d518fc0000, 0x000002d51af50000)
End Bits: [0x000002d51af50000, 0x000002d51cee0000)
Polling page: 0x000002d507cf0000
CodeCache: size=245760Kb used=1754Kb max_used=1771Kb free=244005Kb
bounds [0x000002d509550000, 0x000002d5097c0000, 0x000002d518550000]
total_blobs=523 nmethods=259 adapters=185
compilation: enabled
Compilation events (10 events):
Event: 0.989 Thread 0x000002d51fba9000 256 3 java.io.File::isInvalid (47 bytes)
Event: 0.989 Thread 0x000002d51fba9000 nmethod 256 0x000002d5096ffdd0 code [0x000002d5096fff40, 0x000002d509700390]
Event: 0.989 Thread 0x000002d51fb9e800 257 4 sun.misc.MetaIndex::mayContain (51 bytes)
Event: 0.991 Thread 0x000002d51fb9b000 nmethod 243 0x000002d509704390 code [0x000002d5097045c0, 0x000002d509705850]
Event: 0.994 Thread 0x000002d51fba9000 258 3 java.lang.Character::charCount (12 bytes)
Event: 0.994 Thread 0x000002d51fba9000 nmethod 258 0x000002d509704010 code [0x000002d509704160, 0x000002d5097042f8]
Event: 0.997 Thread 0x000002d51fb9e800 nmethod 257 0x000002d509706e10 code [0x000002d509706f60, 0x000002d509707498]
Event: 1.000 Thread 0x000002d51fba9000 259 1 java.nio.Buffer::limit (5 bytes)
Event: 1.000 Thread 0x000002d51fba9000 nmethod 259 0x000002d509703d50 code [0x000002d509703ea0, 0x000002d509703fb8]
Event: 1.017 Thread 0x000002d51fb9d800 nmethod 253 0x000002d50970a7d0 code [0x000002d50970aa80, 0x000002d50970c1a8]
GC Heap History (0 events):
No events
Deoptimization events (0 events):
No events
Classes redefined (6 events):
Event: 120.821 Thread 0x000002d51dd06800 redefined class name=com.markilue.leecode.listnode.MyLinkedList, count=1
Event: 120.822 Thread 0x000002d51dd06800 redefined class name=com.markilue.leecode.listnode.ListNode, count=1
Event: 164.527 Thread 0x000002d51dd06800 redefined class name=com.markilue.leecode.listnode.MyLinkedList, count=2
Event: 164.528 Thread 0x000002d51dd06800 redefined class name=com.markilue.leecode.listnode.ListNode, count=2
Event: 308.152 Thread 0x000002d51dd06800 redefined class name=com.markilue.leecode.listnode.MyLinkedList, count=3
Event: 308.152 Thread 0x000002d51dd06800 redefined class name=com.markilue.leecode.listnode.ListNode, count=3
Internal exceptions (7 events):
Event: 0.110 Thread 0x000002d507b9a800 Exception <a 'java/lang/NoSuchMethodError': Method sun.misc.Unsafe.defineClass(Ljava/lang/String;[BII)Ljava/lang/Class; name or signature does not match> (0x00000000d5f07cc0) thrown at [C:\jenkins\workspace\8-2-build-windows-amd64-cygwin\jdk8u311\1894\hot
Event: 0.110 Thread 0x000002d507b9a800 Exception <a 'java/lang/NoSuchMethodError': Method sun.misc.Unsafe.prefetchRead(Ljava/lang/Object;J)V name or signature does not match> (0x00000000d5f07fa8) thrown at [C:\jenkins\workspace\8-2-build-windows-amd64-cygwin\jdk8u311\1894\hotspot\src\share\vm\
Event: 0.817 Thread 0x000002d507b9a800 Exception <a 'java/io/FileNotFoundException'> (0x00000000d62ad468) thrown at [C:\jenkins\workspace\8-2-build-windows-amd64-cygwin\jdk8u311\1894\hotspot\src\share\vm\prims\jni.cpp, line 710]
Event: 0.848 Thread 0x000002d507b9a800 Exception <a 'java/security/PrivilegedActionException'> (0x00000000d638d038) thrown at [C:\jenkins\workspace\8-2-build-windows-amd64-cygwin\jdk8u311\1894\hotspot\src\share\vm\prims\jvm.cpp, line 1523]
Event: 0.848 Thread 0x000002d507b9a800 Exception <a 'java/security/PrivilegedActionException'> (0x00000000d638d430) thrown at [C:\jenkins\workspace\8-2-build-windows-amd64-cygwin\jdk8u311\1894\hotspot\src\share\vm\prims\jvm.cpp, line 1523]
Event: 0.849 Thread 0x000002d507b9a800 Exception <a 'java/security/PrivilegedActionException'> (0x00000000d638fb28) thrown at [C:\jenkins\workspace\8-2-build-windows-amd64-cygwin\jdk8u311\1894\hotspot\src\share\vm\prims\jvm.cpp, line 1523]
Event: 0.849 Thread 0x000002d507b9a800 Exception <a 'java/security/PrivilegedActionException'> (0x00000000d638ff20) thrown at [C:\jenkins\workspace\8-2-build-windows-amd64-cygwin\jdk8u311\1894\hotspot\src\share\vm\prims\jvm.cpp, line 1523]
Events (10 events):
Event: 1527.523 Executing VM operation: GetOrSetLocal
Event: 1527.523 Executing VM operation: GetOrSetLocal done
Event: 1559.202 Executing VM operation: ChangeBreakpoints
Event: 1559.202 Executing VM operation: ChangeBreakpoints done
Event: 1559.805 Executing VM operation: ChangeBreakpoints
Event: 1559.805 Executing VM operation: ChangeBreakpoints done
Event: 1573.008 Executing VM operation: ChangeBreakpoints
Event: 1573.008 Executing VM operation: ChangeBreakpoints done
Event: 1581.175 Executing VM operation: ChangeBreakpoints
Event: 1581.176 Executing VM operation: ChangeBreakpoints done
Dynamic libraries:
0x00007ff61b6b0000 - 0x00007ff61b6f7000 E:\Java\JDK8\bin\java.exe
0x00007ffee8f90000 - 0x00007ffee9188000 C:\WINDOWS\SYSTEM32\ntdll.dll
0x00007ffee7cf0000 - 0x00007ffee7dad000 C:\WINDOWS\System32\KERNEL32.DLL
0x00007ffee6a20000 - 0x00007ffee6cee000 C:\WINDOWS\System32\KERNELBASE.dll
0x00007ffee8050000 - 0x00007ffee80fe000 C:\WINDOWS\System32\ADVAPI32.dll
0x00007ffee7560000 - 0x00007ffee75fe000 C:\WINDOWS\System32\msvcrt.dll
0x00007ffee8dd0000 - 0x00007ffee8e6c000 C:\WINDOWS\System32\sechost.dll
0x00007ffee8990000 - 0x00007ffee8ab5000 C:\WINDOWS\System32\RPCRT4.dll
0x00007ffee7eb0000 - 0x00007ffee8050000 C:\WINDOWS\System32\USER32.dll
0x00007ffee6880000 - 0x00007ffee68a2000 C:\WINDOWS\System32\win32u.dll
0x00007ffee8170000 - 0x00007ffee819a000 C:\WINDOWS\System32\GDI32.dll
0x00007ffee6e40000 - 0x00007ffee6f4b000 C:\WINDOWS\System32\gdi32full.dll
0x00007ffee6f50000 - 0x00007ffee6fed000 C:\WINDOWS\System32\msvcp_win.dll
0x00007ffee6cf0000 - 0x00007ffee6df0000 C:\WINDOWS\System32\ucrtbase.dll
0x00007ffed59c0000 - 0x00007ffed5c5a000 C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\COMCTL32.dll
0x00007ffee88f0000 - 0x00007ffee8920000 C:\WINDOWS\System32\IMM32.DLL
0x00007ffedf820000 - 0x00007ffedf835000 E:\Java\JDK8\jre\bin\vcruntime140.dll
0x00007ffebd920000 - 0x00007ffebd9bb000 E:\Java\JDK8\jre\bin\msvcp140.dll
0x000000006aa50000 - 0x000000006b2b0000 E:\Java\JDK8\jre\bin\server\jvm.dll
0x00007ffee7ce0000 - 0x00007ffee7ce8000 C:\WINDOWS\System32\PSAPI.DLL
0x00007ffed2a20000 - 0x00007ffed2a29000 C:\WINDOWS\SYSTEM32\WSOCK32.dll
0x00007ffed5e10000 - 0x00007ffed5e37000 C:\WINDOWS\SYSTEM32\WINMM.dll
0x00007ffedfb10000 - 0x00007ffedfb1a000 C:\WINDOWS\SYSTEM32\VERSION.dll
0x00007ffee8100000 - 0x00007ffee816b000 C:\WINDOWS\System32\WS2_32.dll
0x00007ffee4f90000 - 0x00007ffee4fa2000 C:\WINDOWS\SYSTEM32\kernel.appcore.dll
0x00007ffee0460000 - 0x00007ffee0470000 E:\Java\JDK8\jre\bin\verify.dll
0x00007ffedf7f0000 - 0x00007ffedf81b000 E:\Java\JDK8\jre\bin\java.dll
0x00007ffedb7d0000 - 0x00007ffedb806000 E:\Java\JDK8\jre\bin\jdwp.dll
0x00007ffee1c90000 - 0x00007ffee1c99000 E:\Java\JDK8\jre\bin\npt.dll
0x00007ffedf8f0000 - 0x00007ffedf920000 E:\Java\JDK8\jre\bin\instrument.dll
0x00007ffedef10000 - 0x00007ffedef28000 E:\Java\JDK8\jre\bin\zip.dll
0x00007ffee81a0000 - 0x00007ffee88e4000 C:\WINDOWS\System32\SHELL32.dll
0x00007ffee4790000 - 0x00007ffee4f24000 C:\WINDOWS\SYSTEM32\windows.storage.dll
0x00007ffee6ff0000 - 0x00007ffee7344000 C:\WINDOWS\System32\combase.dll
0x00007ffee6110000 - 0x00007ffee6140000 C:\WINDOWS\SYSTEM32\Wldp.dll
0x00007ffee7a70000 - 0x00007ffee7b1d000 C:\WINDOWS\System32\SHCORE.dll
0x00007ffee7e30000 - 0x00007ffee7e85000 C:\WINDOWS\System32\shlwapi.dll
0x00007ffee65f0000 - 0x00007ffee660f000 C:\WINDOWS\SYSTEM32\profapi.dll
0x00007ffedf850000 - 0x00007ffedf85a000 E:\Java\JDK8\jre\bin\dt_socket.dll
0x00007ffee5e70000 - 0x00007ffee5eda000 C:\WINDOWS\system32\mswsock.dll
0x00007ffee44a0000 - 0x00007ffee4684000 C:\WINDOWS\SYSTEM32\dbghelp.dll
0x00007ffee68e0000 - 0x00007ffee6962000 C:\WINDOWS\System32\bcryptPrimitives.dll
VM Arguments:
jvm_args: -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:5541,suspend=y,server=n -ea -Didea.test.cyclic.buffer.size=1048576 -javaagent:C:\Users\marklue\AppData\Local\JetBrains\IntelliJIdea2021.1\captureAgent\debugger-agent.jar -Dfile.encoding=UTF-8
java_command: com.intellij.rt.junit.JUnitStarter -ideVersion5 -junit4 com.markilue.leecode.listnode.MyLinkedList,test
java_class_path (initial): D:\software\JetBrains\IntelliJ IDEA 2021.1\lib\idea_rt.jar;D:\software\JetBrains\IntelliJ IDEA 2021.1\plugins\junit\lib\junit5-rt.jar;D:\software\JetBrains\IntelliJ IDEA 2021.1\plugins\junit\lib\junit-rt.jar;E:\Java\JDK8\jre\lib\charsets.jar;E:\Java\JDK8\jre\lib\deploy.jar;E:\Java\JDK8\jre\lib\ext\access-bridge-64.jar;E:\Java\JDK8\jre\lib\ext\cldrdata.jar;E:\Java\JDK8\jre\lib\ext\dnsns.jar;E:\Java\JDK8\jre\lib\ext\jaccess.jar;E:\Java\JDK8\jre\lib\ext\jfxrt.jar;E:\Java\JDK8\jre\lib\ext\localedata.jar;E:\Java\JDK8\jre\lib\ext\nashorn.jar;E:\Java\JDK8\jre\lib\ext\sunec.jar;E:\Java\JDK8\jre\lib\ext\sunjce_provider.jar;E:\Java\JDK8\jre\lib\ext\sunmscapi.jar;E:\Java\JDK8\jre\lib\ext\sunpkcs11.jar;E:\Java\JDK8\jre\lib\ext\zipfs.jar;E:\Java\JDK8\jre\lib\javaws.jar;E:\Java\JDK8\jre\lib\jce.jar;E:\Java\JDK8\jre\lib\jfr.jar;E:\Java\JDK8\jre\lib\jfxswt.jar;E:\Java\JDK8\jre\lib\jsse.jar;E:\Java\JDK8\jre\lib\management-agent.jar;E:\Java\JDK8\jre\lib\plugin.jar;E:\Java\JDK8\jre\lib\resources.jar;E:\Java\JDK8\jre\lib\rt.jar;D:\example\self_example\Leecode\target\classes;E:\maven\apache-maven-3.5.4-bin\RepMaven\org\projectlombok\lombok\1.18.24\lombok-1.18.24.jar;E:\maven\apache-maven-3.5.4-bin\RepMaven\junit\junit\4.13.2\junit-4.13.2.jar;E:\maven\apache-maven-3.5.4-bin\RepMaven\org\hamcrest\hamcrest-core\1.3\hamcrest-core-1.3.jar;C:\Users\marklue\AppData\Local\JetBrains\IntelliJIdea2021.1\captureAgent\debugger-agent.jar
Launcher Type: SUN_STANDARD
Environment Variables:
JAVA_HOME=E:\Java\JDK8
PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;D:\software\RAR½âѹ¹¤¾ß\Bandizip\;D:\;oftware\nodejs\;E:\Java\JDK8\bin;E:\maven\apache-maven-3.5.4-bin\apache-maven-3.5.4\bin;E:\scala\scala-2.12.11\bin;D:\software\anaconda\pkgs\python-3.7.11-h6244533_0;D:\software\anaconda\Scripts;D:\software\Git\Git\cmd;D:\software\nodejs;C:\Users\marklue\AppData\Local\Microsoft\WindowsApps;C:\Users\marklue\AppData\Roaming\npm;D:\software\JetBrains\PyCharm 2020.1\bin;
USERNAME=marklue
OS=Windows_NT
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 142 Stepping 10, GenuineIntel
--------------- S Y S T E M ---------------
OS: Windows 10.0 , 64 bit Build 19041 (10.0.19041.1806)
CPU:total 8 (initial active 8) (4 cores per cpu, 2 threads per core) family 6 model 142 stepping 10, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, erms, 3dnowpref, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2, adx
Memory: 4k page, physical 8272104k(2053676k free), swap 11902816k(1707060k free)
vm_info: Java HotSpot(TM) 64-Bit Server VM (25.311-b11) for windows-amd64 JRE (1.8.0_311-b11), built on Sep 27 2021 05:15:14 by "java_re" with MS VC++ 15.9 (VS2017)
time: Mon Sep 5 12:31:48 2022
timezone: Öйú±ê׼ʱ¼ä
elapsed time: 1581.277238 seconds (0d 0h 26m 21s)

View File

@ -143,6 +143,7 @@ public class LC_127_LadderLength {
adjacent.add(new ArrayList<>()); adjacent.add(new ArrayList<>());
for (int i = 0; i < wordList.size(); ++i) { for (int i = 0; i < wordList.size(); ++i) {
String s = wordList.get(i); String s = wordList.get(i);
//构建图
for (int j = i + 1; j < wordList.size(); ++j) { for (int j = i + 1; j < wordList.size(); ++j) {
if (judge(s, wordList.get(j))) { if (judge(s, wordList.get(j))) {
adjacent.get(i).add(j); adjacent.get(i).add(j);
@ -153,6 +154,7 @@ public class LC_127_LadderLength {
return bfs(wordList.size() - 1, endIndex, adjacent, new boolean[wordList.size()]); return bfs(wordList.size() - 1, endIndex, adjacent, new boolean[wordList.size()]);
} }
//i为开始寻找的单词的index;j为结束的单词的index
private int bfs(int i, int j, List<List<Integer>> adjacent, boolean[] visited) { private int bfs(int i, int j, List<List<Integer>> adjacent, boolean[] visited) {
int distance = 0; int distance = 0;
ArrayDeque<Integer> queue = new ArrayDeque<>(); ArrayDeque<Integer> queue = new ArrayDeque<>();
@ -163,8 +165,8 @@ public class LC_127_LadderLength {
for (int k = 0; k < size; ++k) { for (int k = 0; k < size; ++k) {
int v = queue.pollFirst(); int v = queue.pollFirst();
visited[v] = true; visited[v] = true;
if (v == j) return distance; if (v == j) return distance;//找到了
List<Integer> edges = adjacent.get(v); List<Integer> edges = adjacent.get(v);//获取他的子矩阵挨个遍历
for (int e : edges) { for (int e : edges) {
if (!visited[e]) { if (!visited[e]) {
queue.addLast(e); queue.addLast(e);

View File

@ -78,4 +78,26 @@ public class LC_82_DeleteDuplicatesII {
} }
public ListNode deleteDuplicates3(ListNode head) {
if (head == null) return null;
ListNode fake = new ListNode();
fake.next = head;
ListNode temp = fake;
while (temp.next != null && temp.next.next != null) {
//只有这样才能有重复的,才需要删除
if (temp.next.val == temp.next.next.val) {
ListNode tempNext = temp.next;
while (tempNext.next != null && tempNext.val == tempNext.next.val) {
tempNext = tempNext.next;
}
temp.next = tempNext.next;
} else {
temp = temp.next;
}
}
return fake.next;
}
} }

View File

@ -21,7 +21,7 @@ public class T34_75_SortColors {
@Test @Test
public void test() { public void test() {
int[] nums = {2, 0, 2, 1, 1, 0}; int[] nums = {2, 0, 2, 1, 1, 0};
sortColors1(nums); sortColors3(nums);
System.out.println(Arrays.toString(nums)); System.out.println(Arrays.toString(nums));
} }
@ -99,4 +99,28 @@ public class T34_75_SortColors {
} }
//三刷
public void sortColors3(int[] nums) {
int index0 = 0;
int index1 = 0;
for (int i = 0; i < nums.length; i++) {
if (nums[i] == 0) {
swap(nums, index0, i);
if (index0 < index1) {//交换到1了交换回来
swap(nums, index1, i);
}
index1++;
index0++;
} else if (nums[i] == 1) {
swap(nums, index1, i);
index1++;
}
}
}
} }

View File

@ -203,3 +203,106 @@ class LRUCache {
} }
} }
class LRUCache1 {
public static void main(String[] args) {
LRUCache1 lRUCache = new LRUCache1(2);
lRUCache.put(1, 1); // 缓存是 {1=1}
lRUCache.put(2, 2); // 缓存是 {1=1, 2=2}
System.out.println(lRUCache.get(1)); // 返回 1
lRUCache.put(3, 3); // 该操作会使得关键字 2 作废缓存是 {1=1, 3=3}
System.out.println(lRUCache.get(2)); // 返回 -1 (未找到)
lRUCache.put(4, 4); // 该操作会使得关键字 1 作废缓存是 {4=4, 3=3}
System.out.println(lRUCache.get(1)); // 返回 -1 (未找到)
System.out.println(lRUCache.get(3)); // 返回 3
System.out.println(lRUCache.get(4)); // 返回 4
}
Map<Integer,Node> cache;
int capacity;
int size;
Node head;
Node tail;
public LRUCache1(int capacity){
this.capacity=capacity;
cache =new HashMap<>();
size=0;
head =new Node();
tail=new Node();
head.next=tail;
tail.pre=head;
}
public int get(int key) {
Node node = cache.get(key);
if(node==null){
return -1;
}else{
//将该节点挪到头部
deleteNode(node);
removeToHead(node);
return node.value;
}
}
public void put(int key, int value) {
Node node = cache.get(key);
if(node==null){
//没有则添加
if(size==capacity){
//满了,删除
cache.remove(tail.pre.key);
deleteNode(tail.pre);
size--;
}
Node newNode = new Node(key,value);
removeToHead(newNode);
cache.put(key,newNode);
size++;
}else{
//更新,将该节点挪到头部
node.value=value;
deleteNode(node);
removeToHead(node);
}
}
private void deleteNode(Node node){
node.pre.next=node.next;
node.next.pre=node.pre;
}
private void removeToHead(Node node){
node.next=head.next;
head.next.pre=node;
head.next=node;
node.pre=head;
}
class Node {
int key;
int value;
Node pre;
Node next;
public Node() {
}
public Node(int key, int value) {
this.key = key;
this.value = value;
}
}
}

View File

@ -0,0 +1,90 @@
package com.markilue.leecode.interview.meituan.T0415;
import java.util.Arrays;
import java.util.Scanner;
/**
*@BelongsProject: Leecode
*@BelongsPackage: com.markilue.leecode.interview.meituan.T0415
*@Author: markilue
*@CreateTime: 2023-06-09 18:41
*@Description: TODO
*@Version: 1.0
*/
public class NestingDolls {
static int n;
static Doll[] dolls;
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
n = in.nextInt();
dolls = new Doll[n];
for (int i = 0; i < n; ++i) {
int a = in.nextInt(), b = in.nextInt(), c = in.nextInt();
dolls[i] = new Doll(a, b, c);
}
Arrays.sort(dolls);//按最大空间有小到大排序
int minCost = 0;
for (int i = 0; i < n; ++i) {
if (!dolls[i].used) {
int cost = insertDoll(i, dolls[i].b);
minCost += cost;
}
}
System.out.println(minCost);
in.close();
}
// 将第 i 个套娃插入内部大小为 size 的套娃中
static int insertDoll(int i, int size) {
dolls[i].used = true;
int j = findSmallest(size);
if (j == -1) {//没有找到能够放在里面的需要重新开辟
dolls[i].minSize = size;
dolls[i].minCost = dolls[i].c * size;//由于都放不进所以最小值就是全部的
return dolls[i].minCost;
} else {
int cost = insertDoll(j, dolls[i].a) + dolls[i].c * (size - dolls[j].a);
if (cost < dolls[i].minCost) {
dolls[i].minSize = size- dolls[j].a;
dolls[i].minCost = cost;
}
return cost;
}
}
// 寻找最小的被 size 占据的空间能够容纳的套娃
static int findSmallest(int size) {
int j = -1;
for (int i = 0; i < n; ++i) {
if (!dolls[i].used && dolls[i].a <= size)
if (j == -1 || dolls[i].minSize < dolls[j].minSize) j = i;
}
return j;
}
static class Doll implements Comparable<Doll> {
int a;
int b;
int c;
boolean used = false; // 是否已经被放置
int minSize; // 占据的最小内部空间
int minCost; // 最小花费
Doll(int a, int b, int c) {
this.a = a;
this.b = b;
this.c = c;
}
@Override
public int compareTo(Doll other) {
return Integer.compare(a, other.a);
}
}
}

View File

@ -0,0 +1,92 @@
package com.markilue.leecode.interview.meituan.T0415;
import org.junit.Test;
import java.util.*;
/**
*@BelongsProject: Leecode
*@BelongsPackage: com.markilue.leecode.interview.meituan.T0415
*@Author: markilue
*@CreateTime: 2023-06-09 13:11
*@Description:
* TODO 小美玩套娃:
* 小美最近喜欢上了玩套娃
* 具体的小美有 n 个套娃 i 个套娃的大小为 ai内部空间为 bi(biai)
* 对于两个套娃x,y x能放入y中当且仅当axby 且放入后会占据 y 大小为 ax 的内部空间 y 的内部空间剩下 by-ax
* 每个套娃只能放在另外的一个套娃内每个套娃内部也只能放一个套娃当然内部放的这个套娃可以内部还有套娃
* 显然套娃是套的越多越好于是小美给每个套娃定义了一个价值 ci
* 如果套完之后套娃 i 还剩 k 的内部空间小美需要付出ci*k 的花费总花费为所有套娃的花费之和现在小美想知道最小的花费为多少
*@Version: 1.0
*/
public class Question4 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] out = new int[n];
int[] in = new int[n];
int[] payment = new int[n];
for (int i = 0; i < n; i++) {
out[i] = sc.nextInt();
}
for (int i = 0; i < n; i++) {
in[i] = sc.nextInt();
}
for (int i = 0; i < n; i++) {
payment[i] = sc.nextInt();
}
solve(out, in, payment);
}
@Test
public void test() {
int[] out = {5, 4, 3};
int[] in = {4, 2, 2};
int[] payment = {3, 2, 1};
solve(out, in, payment);
}
//官方思路:可能是错的贪心的思路:尽可能将花费大的先填满
public static void solve(int[] out, int[] in, int[] payment) {
//构造按大小排序的套娃
List<int[]> taoS1 = new ArrayList<>();
List<int[]> taoS2 = new ArrayList<>();
for (int i = 0; i < out.length; i++) {
taoS1.add(new int[]{out[i], in[i], payment[i], i});
taoS2.add(new int[]{out[i], in[i], payment[i], i});
}
Collections.sort(taoS1, ((o1, o2) -> o1[0] - o2[0]));//按空间有小到大排序
Collections.sort(taoS2, ((o1, o2) -> o1[2] - o2[2]));//按花费排序
//按照空间大小遍历,找到最大的未使用的最大的套娃
int n = out.length;
int rightThreshold = n - 1;
for (int i = n - 1; i >= 0; i--) {
int left = 0;
int right = rightThreshold;
int mid = (left + right + 1) >> 1;//四舍五入
while (left < right) {
mid = (left + right + 1) >> 1;
if (taoS2.get(i)[1] >= taoS1.get(mid)[0]) left = mid;//当前花费最大的能被放入;寻找更大能放入的
else left = mid + 1;//为了快速收敛?
}
if (taoS1.get(mid)[3] == taoS2.get(i)[3]) right--;//使用的自己,那不行
if (taoS2.get(i)[1] < taoS1.get(right)[0]) break;//当前位置不可能被其他的点放入了
taoS2.get(i)[1] -= taoS1.get(right)[0];
rightThreshold = right - 1;
}
int result = 0;
for (int[] total : taoS2) {
result += total[1] * total[2];
}
System.out.println(result);
}
}